Cómo eliminar archivos y carpetas desde CMD en Windows

Cómo eliminar archivos y carpetas desde CMD en Windows

Rubén Velasco

Windows nació con el fin de ayudar a los usuarios a usar los ordenadores a través de una interfaz gráfica. En una época donde todo se controlaba desde comandos y sistemas como DOS (o MS-DOS), Windows llegó con una interfaz gráfica mucho más intuitiva y diseñada para aprovechar el uso de un nuevo periférico totalmente novedoso: el ratón. Hoy en día todos utilizamos Windows con el ratón, y navegamos por nuestros archivos y carpetas utilizando el Explorador de Archivos. Sin embargo, también es posible hacerlo de la forma clásica, utilizando CMD.

Aunque cuando hablamos de terminal generalmente lo asociamos con Linux, Windows también tiene su propia «terminal» heredada de MS-DOS, la conocida «Command Prompt«, «Símbolo de sistema» o simplemente CMD.

Los usuarios que quieran utilizar el sistema operativo a la antigua usanza pueden utilizar el símbolo de sistema para ejecutar determinados comandos en el sistema y realizar tareas básicas. Si alguna vez hemos utilizado esta consola seguro que los primeros comandos que habremos utilizado serán ping, para ver si tenemos conectividad a Internet, cd para desplazarnos por los directorios de nuestro disco duro y dir para mostrar una lista de todos los archivos y carpetas en dicho directorio.

Si queremos aprender un poco más sobre los comandos de CMD, hoy os vamos a enseñar cómo eliminar archivos y carpetas desde CMD.

¿Cuándo es útil borrar archivos con CMD?

A diferencia de lo que ocurre en Linux, que tener unos conocimientos de terminal es esencial, cuando trabajamos con Windows, estos conocimientos no son necesarios. La consola de CMD es un elemento heredado de MS-DOS, antes de que los sistemas operativos tuvieran su propia interfaz para usarlos con teclado y ratón. No hay nada que podamos hacer desde CMD que no podamos hacer desde el propio Windows, pero es necesario que esta consola exista, como PowerShell.

Sin embargo, aunque no es necesario conocer su funcionamiento (todos vamos a borrar siempre archivos usando el menú contextual del botón derecho, o con la tecla SUPR), hay situaciones en las que nos pueden ser útiles. Por ejemplo, para automatizar ciertas tareas mediante la creación de scripts en .bat. O, si estamos programando, para realizar algunas llamadas al sistema desde esta consola de forma rápida y sencilla.

Más allá de esos usos, eliminar los archivos desde aquí no tiene mucha más utilidad. Es más, incluso tendremos limitaciones a la hora de borrar los archivos, y podremos incluso correr el riesgo de equivocarnos y tener problemas. Simplemente, nos viene bien conocer los comandos que se usan para esta tarea ya que forman parte de los comandos esenciales de CMD. A continuación, vamos a ver cómo se hace.

Borrar archivos usando comandos

En los tiempos que corren, estamos más que acostumbrados a trabajar con la gran mayoría de los sistemas operativos, a través de las potentes interfaces gráficas que nos proponen. Esto es algo que sucede con el software de los de Redmond, Windows, en las distros de Linux de las que podemos echar mano, o en el sistema de Apple, macOS. Sin embargo, esto no siempre ha sido así, antaño, algo que seguro recuerdan los más veterano, trabajábamos a base de comandos. De hecho, hoy día los mismos están muy presentes, aunque los suelen usar los usuarios más avanzados que necesitan sacar más provecho a su equipo.

Esto es algo que sucede, por ejemplo, con el caso del que os queremos hablar en estas mismas líneas. Es decir, eliminar archivos y carpetas en Windows es muy fácil, pero desde el CMD a base de comandos, tendremos más control sobre el proceso como tal. Cierto es que puede ser un tanto más engorroso o molesto, pero seguro que a muchos les será de utilidad. Además, estos comandos se pueden convertir en scripts propios que formarán parte de proyectos de programación más grandes, por ejemplo

Eliminar archivos

Aunque siempre es más fácil y rápido seleccionar los archivos en el explorador y pulsar la tecla supr para eliminarlos, si queremos también podemos hacerlo desde CMD.

Para ello, no tenemos más que utilizar el comando DEL. Este comando (DELete) nos va a permitir eliminar archivos de nuestro disco duro fácilmente. Para ello, usando el comando CD nos desplazaremos hasta el directorio que contiene el archivo que vamos a eliminar y ejecutaremos el siguiente comando:

DEL /F /A <archivo.extension>

Eliminar archivo CMD

El parámetro /F nos permitirá forzar la eliminación del archivo, mientras que el /A nos permite eliminar solo los archivos marcados como «ready for archiving» por Windows.

Borrar carpetas

Si lo que queremos es eliminar una carpeta, el proceso es similar, pero en vez de usar el comando DEL para eliminarla, tendremos que usar RD (Remove Directory).

Para ello, nos situaremos con el comando CD en la carpeta que contiene la carpeta que queremos eliminar, y ejecutaremos el siguiente comando:

RD /S <carpeta>

El parámetro /S indica que también eliminaremos todas las subcarpetas que haya dentro de la carpeta. Si no lo ponemos y hay una carpeta dentro, no eliminará la carpeta principal.

Crear un script de borrado

Un script es un archivo de texto que tiene en su interior una serie de instrucciones, o comandos, los cuales podemos ejecutar en el ordenador para realizar determinadas tareas. A grandes rasgos, un script es como un código de programación, pero pensado para realizar tareas de forma mucho más rápida y sencilla.

Puede darse el caso de que nos interese vaciar una carpeta automáticamente cada cierto tiempo. Por ejemplo, la carpeta de archivos temporales de Spotify (que ocupa siempre la friolera de 10 GB de espacio), o las carpetas de archivos temporales del navegador o del sistema operativo. En ese caso, lo que debemos hacer es abrir un editor de texto plano (como, por ejemplo, el Bloc de Notas, o un editor más completo como Visual Studio Code), y escribir en él los comandos que queremos ejecutar. Un comando por línea. Por ejemplo, para borrar el directorio temporal de Spotify y un archivo llamado «SoftZone.txt» del escritorio, las dos líneas del archivo serían las siguientes (cambiando el nombre de usuario «ruvel» por el del usuario de nuestro PC):

Script borrar datos CMD

Una vez escrito nuestro script con todo lo que queremos borrar, lo que haremos a continuación será guardarlo en formato que podamos abrir con CMD. Para ello, usamos la opción Archivo > Guardar como, en «tipo» seleccionamos la opción «Todos los archivos», y de nombre del archivo le damos el que queramos, acabado en .bat. Por ejemplo, «limpiaza.bat».

Ahora, cuando hagamos doble clic sobre este archivo, se ejecutarán en una ventana de CMD las líneas de código que le hemos introducido, dejando nuestro PC limpio. Además, si queremos, podemos crear una tarea programada para que el script se ejecuta automáticamente cada cierto tiempo, e incluso configurarlo para que se ejecute todos los días automáticamente al encender el ordenador (o al apagarlo, mejor aún).

Si queremos que este script se inicie cada vez que iniciamos el ordenador, debemos acceder al Administrador de tareas (Ctrl + Alt + Supr). En la pestaña Inicio, pulsamos en Archivo > Ejecutar nueva tarea y seleccionamos el nombre del archivo .bat que hemos creado. A partir de este momento, cada vez que iniciemos nuestro equipo, el archivo .bat que contiene el script para realizar el proceso, se ejecutará automáticamente.

Byenow, eliminar muchas carpetas a la vez

Eliminar las carpetas una a una desde CMD es rápido si tenemos pocas que eliminar, como hemos visto ahora mismo. Pero cuando el número de carpetas aumenta, la cosa se complica un poco, y hacerlo una a una no es la mejor solución que podemos llevar a cabo. Por tanto, esta es una tarea que puede llegar a convertirse en una pesadilla, pero veamos cómo solucionarlo.

byenow es un programa gratuito que se ejecuta desde el propio CMD pero que nos va a ayudar a eliminar muchos archivos y carpetas de una sola vez muy rápidamente para no tener que depender más del comando rmdir.

Para ello, este programa se encarga de utilizar la API NtDeleteFile de Windows en lugar de usar la API clásica DeleteFile utilizada por otros comandos y otras herramientas. Con esto consigue reducir las llamadas al sistema y obtiene a cambio una aceleración más que notablemente el proceso de borrado de los datos. Incluso su propio desarrollador asegura que es capaz de eliminar carpetas hasta dos veces más rápido que otros programas similares, e incluso que los propios comandos de CMD.

Otro punto a favor de este programa es que no necesita instalación, por lo que podemos descargarlo, guardarlo y ejecutarlo en cualquier dispositivo de almacenamiento externo como un disco duro, un pendrive o tarjeta de memoria y no deja rastro alguno en el Registro de Windows.

byenow - eliminar

La sintaxis de este programa es muy sencilla, por lo que si colocamos el ejecutable dentro de PATH de Windows siempre podremos tenerlo a mano para cuando lo necesitemos. Bastará con ejecutar en una ventana de CMD el comando «byenow», seguido del directorio que queremos eliminar y el parámetro que queramos ejecutar. Podemos elegir entre un total de 7 parámetros:

  • -p: muestra la vista previa de todo el contenido sin eliminar nada.
  • -s: primero nos enseña una lista con el contenido, y después lo borra.
  • -1: muestra el progreso de ejecución del programa en una línea.
  • -e: muestra una lista con todos los errores.
  • -y: no pide confirmación para borrar.
  • -t n: utiliza un número n de hilos de nuestro procesador para borrar los datos mucho más rápido.
  • -n: usa la API NtDeleteFile de Windows 10 y 11 para eliminar los archivos.

Con todo ello, al usar esta aplicación junto con sus parámetros adecuados, vamos a poder crear y llevar a cabo nuestros propios scripts en .bat. Esto nos puede servir de gran ayuda si a menudo necesitamos poder eliminar carpetas muy grandes con muchos archivos, ya que de esta forma será posible que podamos automatizar y acelerar el proceso.

Problemas al eliminar los archivos con CMD

Puede que al intentar ejecutar el parámetro DEL o RD el símbolo de sistema nos devuelva un mensaje de error. Esto habitualmente suele ser por un problema de permisos. Por ejemplo, si estamos intentando eliminar un archivo del sistema, o una carpeta de la que no somos propietario, entonces CMD no nos va a dejar.

Para solucionarlo, bastará con abrir CMD con permisos de Administrador y listo. Salvo archivos del sistema protegidos, con CMD como Administrador podrá eliminar cualquier tipo de archivos. Para aquellos que no sepáis como podéis realizar esta tarea que os comentamos, decir que es muy sencillo. El método más efectivo es escribir el comando CMD en el cuadro de búsqueda de Windows, es situado en la barra de tareas. A continuación, cuando aparezca la entrada para picharla, lo hacemos, pero en este caso con el botón secundario del ratón.

En ese momento aparecerá la opción de Ejecutar con permisos de Administrador. De hecho, este mismo proceso lo podemos llevar a cabo con el icono de cualquier otro programa que deseemos o necesitemos ejecutar como Administrador. Esto suele ser habitual en aquellos títulos en los que se tienen que llevar a cabo ciertos cambios internos en el sistema operativo.

También nos podemos encontrar con archivos que únicamente son de lectura aunque no pertenezcan al sistema y que no podemos borrar ni desde Windows ni utilizando el símbolo del sistema. La solución a este problema es tan sencilla como utilizar el comando Attrib desde la línea de comandos. El comando Attrib nos permite gestionar los atributos de los archivos y carpetas, atributos que nos permite establecer archivos como de solo lectura para evitar que se borren de forma accidental o deliberadamente. Si estamos intentando eliminar un archivo o carpeta que es de solo lectura, Windows nos informará del motivo. Para eliminar la protección contra lectura, debemos utilizar el siguiente comando desde Símbolo de sistema:

attrib -r nombrearchivo.extensión

Es importante añadir la extensión ya que, de lo contrario, Windows no será capaz de encontrar el archivo, aunque pueda parecer algo absurdo, cuando se trabaja con línea de comandos, es necesario siempre añadir la extensión del archivo para poder realizar acciones con él. Si se trata de una carpeta, el comando a utilizar es el mismo pero sin la extensión, ya que las carpetas no incluyen ningún tipo de extensión que los asocie con alguna aplicación concreta.

attrib -r nombredelacarpeta

Otro atributo interesante que podemos utilizar con este comando es «-h» para ocultar un archivo y «+h» para que se muestre. Es necesario ejecutar este comando desde el directorio donde se encuentra el archivo o carpeta. Si no queremos acceder a la carpeta donde se encuentra y conocemos su ubicaicón, podemos establecer la ruta donde encuentra junto con el nombre del archivo.

attrib -r c:/users/nacho/nombrearchivo.extensión attrib -r c:/users/nacho/nombredelacarpeta

Debemos tener en cuenta que todos los archivos que borremos a través de Command Promt son totalmente irrecuperables desde el propio sistema. Las primeras versiones de Windows incluían soporte para el comando Undelete, un comando que nos permitía recuperar los archivos que previamente hubiéramos eliminado del sistema. Sin embargo, conforme los usuarios se han ido olvidando de utilizar la línea de comandos, Microsoft decidió que este comando dejaba de ser útil siendo la papelera de reciclaje el único método para recuperar archivos borrados, siempre y cuando realicemos este proceso desde la interfaz gráfica.

Sin embargo, no todo está perdido si borramos un archivo desde la línea de comandos y queremos recuperarlo, ya que podemos recurrir a aplicaciones para recuperar datos, aplicaciones que, por regla general, suelen ser de pago y no siempre funcionan como deberían. En la medida de lo posible, a no ser que estemos completamente seguros de lo que estamos haciendo, es recomendable borrar archivos utilizando la interfaz gráfica tal y como os mostramos en el siguiente apartado, ya que nos permitirá recuperar los archivos que eliminemos al pasar directamente a la papelera de reciclaje hasta que sean eliminados por el usuario o se borren automáticamente transcurrido el periodo de tiempo establecido por Windows que es de 30 días.

Otros trucos para borrar archivos y carpetas

Los anteriores trucos para borrar archivos y carpetas directamente desde CMD son más curiosos que, en realidad útiles. Hoy en día es raro que, salvo que estemos automatizando tareas mediante scripts, vayamos a estar abriendo y ejecutando comandos en CMD para algo que podemos hacer mucho más fácilmente desde el propio escritorio.

Hay varias formas de borrar archivos y carpetas en Windows. Una de las más utilizadas es arrastrar el archivo hasta la papelera de reciclaje de Windows. De esta manera, lo moveremos allí y quedará disponible hasta que la vaciemos. Si, mientras arrastramos el archivo a la papelera, presionamos la tecla Mayús, el elemento se eliminará definitivamente de nuestro de nuestro equipo sin pasar por la papelera de reciclaje, al igual que sucede con los archivos de gran tamaño.

Otra forma, con mismo resultado, es seleccionar el archivo y hacer clic con el botón derecho sobre «Eliminar». Y, por supuesto, también podemos seleccionarlo y pulsar la tecla Supr del teclado para borrarlos.

Eliminar acceso directo

La ventaja de usar estos métodos es que, salvo que el archivo sea muy grande, se moverá a la papelera, no se eliminará definitivamente. Así, si hemos cometido un error al borrar el archivo podremos recuperarlo fácilmente y sacarlo de la papelera sin tener que recurrir a programas forenses para ello.

Si, además, utilizamos una plataforma de almacenamiento en la nube y los archivos que borramos se encuentra sincronizados con OneDrive, Dropbox, Google Drive o cualquier otra, aunque los elementos se eliminen de la papelera de Windows, estos seguirán estando disponibles en la papelera de estas plataformas durante un máximo de 30 días, período máximo que Windows almacena los archivos eliminados en la papelera antes de eliminarlos por completo, aunque Windows nos permite ampliar a un máximo de 60 días y reducirlo a la mínima expresión.

Borrar ficheros con un comando en PowerShell

Si preferimos trabajar, a la hora de llevar a cabo determinadas tareas en Windows, a base de comandos, una alternativa más moderna e interesante que CMD, es PowerShell. Esta es otra funcionalidad integrada en el propio sistema operativo de Microsoft muy similar a la que os hemos hablado en estas líneas, pero más potente. Desde aquí podremos crear nuestros propios scripts personalizados y llevar a cabo tareas más complejas de lo que por ejemplo podemos hacer desde la ventana del símbolo del sistema.

Evidentemente algo tan básico como es borrar archivos desde este apartado es algo que podemos realizar de manera sencilla. De hecho, esta es una función que podemos integrar en nuestros propios scripts para que formen parte de órdenes más complejas que podemos crear directamente en PowerShell. Por tanto, para borrar contenidos no tenemos más que utilizar el siguiente comando en este apartado:

Remove-Item RUTA_FICHERO

De esta manera podremos forzar la eliminación de cualquier contenido que tengamos almacenado en las unidades de disco de manera rápida y sencilla.

¿Problemas para borrar archivos?

Hasta aquí hemos visto muchas formas de eliminar archivos y carpetas en Windows, ya sea usando CMD, un script, e incluso con la papelera de reciclaje. Pero ¿qué pasa si no somos capaces de eliminar los archivos?

Hay varias situaciones por las que podemos encontrarnos con problemas a la hora de eliminar archivos de nuestro ordenador. Pero lo más común es que se trate de un problema de permisos, ya sea porque no somos los propietarios de la carpeta (algo común en ordenadores compartidos), porque lo que estamos intentando eliminar es un archivo o una carpeta del sistema o porque se trate de un archivo que están siendo utilizado por el sistema en ese momento. En este último caso, desde Windows nunca vamos a poder eliminarlos.

Entonces, llegados a este punto, tenemos dos opciones. La primera de ellas es abrir la consola de CMD con permisos de administrador para poder realizar el borrado de los datos sin las limitaciones mencionadas. Y la segunda es apostar por una distribución Linux que, en modo Live, nos permita eliminar los datos del disco duro sin ninguna restricción de permisos. En ambos casos, tanto si utilizamos la línea de comandos en modo administrador como si utilizamos una distribución Linux en modo Live, debemos tener en cuenta que no vamos a poder recuperar posteriormente los archivos, ya que estos no se almacenan en la papelera de reciclaje antes de ser eliminados del equipo, ya que no se realiza el proceso utilizando la interfaz gráfica del sistema. Es importante tener este dato en cuenta ya que, si no estamos seguros de querer borrar un archivo, recuperarlo será prácticamente imposible sin recurrir a aplicaciones de recuperación de archivos.

Otra opción pasa por iniciar Windows en modo seguro. Al iniciarse en modo seguro, muchos de los archivos que habitualmente pueden estar protegidos por el sistema, se deshacen de esa protección y podemos borrarlos sin ningún tipo de problemas. Eso sí, no hay que confundir los archivos protegidos por el sistema (por el motivo que sea) que los archivos que forman parte del sistema. Los archivos que forman parte del sistema nunca vamos a poder eliminarlos iniciando el equipo desde el disco duro donde se encuentra el sistema operativo, ni tan siquiera iniciando en modo seguro. De esta forma, Microsoft se asegura que los usuarios que bajos conocimientos o a los que le gusta probar cosas, borren archivos del sistema sin saber a ciencia cierta qué es lo que están haciendo en realidad y la estabilidad del equipo se vea afectada.

Al igual que si eliminamos archivos desde la línea de comandos o desde una distribución Linux, los archivos que eliminemos a través del modo seguro de Windows, tampoco será recuperables por el mismo motivo, ya que, al no utilizarse la interfaz gráfica, Windows es consciente del proceso que se está realizando y almacenará esos archivos en la papelera durante el tiempo establecido de forma nativa, que, por defecto, es de 30 días.

1 Comentario