Ejemplos de administración de archivos con comandos .cmd en Windows

Última actualización: 15/12/2025
Autor: Isaac
  • Uso de comandos CMD básicos y avanzados para administrar archivos y carpetas en Windows.
  • Ejemplos prácticos de automatización con archivos por lotes .cmd y bucles FOR.
  • Diferencias entre tareas de administración de archivos en CMD y en terminal Linux.
  • Comandos clave de diagnóstico y sistema útiles junto a la gestión de ficheros.

Terminal CMD con ejemplos de administración de archivos

Si trabajas a menudo con muchos documentos, carpetas o proyectos, aprender a usar comandos de Windows y archivos .cmd puede ahorrarte una cantidad de tiempo brutal. En lugar de ir haciendo clic por clic, puedes automatizar tareas repetitivas como copiar, mover, renombrar, crear estructuras enteras de directorios o incluso hacer pequeñas auditorías del sistema desde la consola.

En este artículo vas a ver ejemplos reales de administración de archivos y carpetas con CMD, combinando comandos básicos con otros más avanzados y bucles. Además, se incluyen referencias a utilidades de diagnóstico y se compara, cuando viene al caso, con comandos equivalentes en sistemas tipo Linux para que tengas una visión más completa. La idea es que puedas copiar, adaptar y reutilizar estos ejemplos en tus propios scripts .cmd y aprender a automatizar tareas de archivos en Windows.

Comandos básicos de manejo de directorios y archivos en CMD

Ventana CMD mostrando comandos para gestionar archivos

Antes de meternos con scripts y automatizaciones, conviene dominar bien los comandos esenciales de directorios y ficheros que usarás a todas horas en el Símbolo del sistema de Windows.

Para moverte por las carpetas del sistema se utilizan principalmente CD y CHDIR. Ambos hacen lo mismo: mostrar o cambiar el directorio actual. Ejemplos típicos serían cd \ para ir a la raíz de la unidad, cd .. para subir un nivel o cd /d D:\Proyectos para cambiar de unidad y de carpeta en un solo paso.

Si quieres ver qué hay dentro de una carpeta, el comando estrella es DIR. Sin parámetros, dir lista archivos y subdirectorios del directorio actual, pero con dir /b obtendrás solo los nombres en formato simple, y con dir /a incluirás también elementos ocultos y de sistema. Otros modificadores útiles son /o para ordenar (por nombre, tamaño, fecha, etc.), y para búsquedas avanzadas puedes usar herramientas de búsqueda instantánea de archivos.

Para crear nuevas carpetas dispones de MD y MKDIR, que son equivalentes: mkdir NuevaCarpeta o md Datos\2025. El sistema no cambia automáticamente a esa carpeta, solo la crea, así que tendrás que moverte luego con cd si quieres entrar.

Cuando necesites borrar directorios, tienes RD y RMDIR. El uso básico sería rmdir NombreCarpeta, que solo funciona si la carpeta está vacía. Para eliminar una carpeta con todo su contenido, se suele usar rmdir /s /q Carpeta, donde /s borra subdirectorios y archivos y /q evita las confirmaciones.

En cuanto a ficheros sueltos, el comando más directo para eliminarlos es DEL (o su alias ERASE). Puedes usar del archivo.txt, del /q /f *.* para forzar el borrado silencioso incluso de archivos de solo lectura o del /s *.tmp para limpiar ficheros temporales de una estructura de carpetas completa.

Para copiar archivos se emplea COPY, que sirve para duplicar uno o varios ficheros en otra ubicación, por ejemplo copy informe.docx D:\Copias. Para moverlos o renombrarlos está MOVE, que se usa tanto para cambiar de carpeta un archivo como para darle un nuevo nombre: move viejo.txt nuevo.txt o move archivo.txt C:\Destino.

Los cambios de nombre más masivos se hacen con REN o RENAME. Su forma básica es ren archivo1.txt archivo2.txt, pero también admite comodines, lo que permite modificar muchos archivos de golpe, algo que veremos más adelante combinado con bucles.

Listar, documentar y visualizar estructuras de archivos

Árbol de directorios mostrado en consola

Una de las tareas habituales cuando gestionas un montón de contenido es obtener listados de archivos o mapas de directorios para documentar proyectos, hacer inventarios o simplemente tener una referencia clara.

El comando más básico para listar es DIR, pero combinado con redirecciones te permite generar informes. Por ejemplo, dir /b > listado.txt crea un fichero de texto con solo los nombres de los elementos de la carpeta actual. Puedes aplicar filtros como dir *.ext /o:-s > lista_ext.txt para listar solo ficheros de una extensión concreta y ordenarlos.

Si necesitas una representación más visual de la estructura, el comando TREE muestra el árbol de directorios usando caracteres ASCII. Con tree Ruta verás las carpetas a partir de ese punto, y si añades el modificador /f (por ejemplo tree C:\Proyectos /f) también verás los archivos contenidos en cada directorio, y para una vista previa más rápida de archivos conviene usar herramientas como vista previa instantánea de archivos.

Estos listados son muy prácticos para documentación técnica, correos o manuales, porque permiten visualizar de un vistazo la organización de un proyecto, desde las carpetas principales hasta los ficheros finales que lo componen.

  Qué pasa si no activas Windows Server tras 180 días de prueba

Para mostrar el contenido de ficheros de texto sin abrir un editor, en CMD dispones de TYPE. Con type notas.txt se imprime el contenido en la consola. Si el archivo es muy largo, es habitual combinarlo con MORE, usando algo como type log.txt | more para ir viendo el contenido página a página.

CMD también recuerda comandos anteriores gracias a DOSKEY, que permite recuperar y editar órdenes previas. No es un comando de listado de archivos, pero combinado con la repetición de patrones puede acelerar mucho tu flujo de trabajo cuando estás montando varios listados similares.

Creación masiva de archivos y carpetas con bucles FOR

Cuando necesitas crear decenas o cientos de elementos, hacerlo a mano es una locura. Para eso está el comando FOR, que en archivos .cmd se convierte en una de las herramientas más potentes para automatizar tareas.

Una variante muy útil es FOR /L, que recorre un rango de números. Por ejemplo, para crear archivos numerados podrías usar algo como:
for /L %i in (0,1,10) do echo. > "%i hola.md". Este comando genera ficheros desde «0 hola.md» hasta «10 hola.md». Si en lugar de archivos quieres carpetas, bastaría con cambiar echo. > por mkdir.

Otro caso típico es cuando tienes una lista de nombres en un archivo de texto y quieres convertir cada línea en un fichero o directorio. Ahí entra en juego FOR /F. Por ejemplo:
for /f "tokens=*" %i in (nombres.txt) do mkdir "%i"
creará una carpeta por cada línea de nombres.txt. De forma similar, podrías generar archivos con echo. > "%i.md" dentro del bucle.

Una variante muy práctica para organizar proyectos es crear una carpeta por cada archivo existente y mover dentro su archivo correspondiente. Con algo como:
for %i in (*) do mkdir "%~ni" && move "%i" "%~ni"
el sistema crea un directorio con el mismo nombre que el fichero (sin la extensión) y lo mueve dentro automáticamente.

Los bucles FOR también sirven para concatenar múltiples ficheros de texto en uno solo. Por ejemplo:
for %i in (*.txt) do type "%i" >> salida.txt && echo. >> salida.txt
va leyendo todos los .txt de la carpeta, volcando su contenido en salida.txt y añadiendo saltos de línea entre unos y otros para que sea más legible.

Si quieres que en el archivo resultante aparezca también el nombre de cada fichero original antes de su contenido, puedes modificar el bucle:
for %i in (*.txt) do echo %i >> salida.txt && type "%i" >> salida.txt && echo. >> salida.txt. Así obtendrás algo parecido a un índice concatenado.

Copiar, mover y clonar estructuras de carpetas

La administración de archivos en Windows no se limita a copiar un documento de un sitio a otro. A menudo necesitas clonar estructuras completas, replicar un archivo en muchas carpetas o mover grandes volúmenes de datos con precisión.

Para copias sencillas, COPY funciona bien: copy archivo.txt D:\Destino. Si quieres copiar varios archivos a la vez puedes usar comodines: copy *.docx C:\Informes. Este comando también permite concatenar ficheros cuando se usan signos +, aunque para tareas más complejas suele ser mejor tirar de bucles FOR como hemos visto antes.

Cuando necesitas algo más robusto, entra en juego XCOPY, que copia árboles de directorios completos. Con xcopy Origen Destino /t solo clonas la estructura de carpetas, sin archivos, mientras que con /t /e incluyes también subdirectorios vacíos. Esto es perfecto para montar plantillas de proyectos o duplicar arquitecturas complejas sin arrastrar aún el contenido.

Para copias realmente avanzadas, en Windows moderno es muy popular ROBOCOPY. Permite reintentos, reanudar copias interrumpidas, filtrar por fecha, tamaño, atributos, etc. Un ejemplo sencillo sería:
robocopy C:\Origen D:\Destino /E
que copia todos los archivos y subcarpetas, incluidas las vacías. Además, para ahorrar espacio puedes comprimir y descomprimir archivos con comandos cuando prepares copias. Es ideal para migraciones de datos o sincronizar carpetas grandes.

Si lo que quieres es copiar un único archivo en todas las subcarpetas de un directorio (por ejemplo, un readme.txt), puedes combinar FOR con XCOPY:
for /D %a in (*) do xcopy /Y readme.txt "%a". El modificador /D hace que el bucle recorra solo directorios.

En cuanto a mover elementos, el comando MOVE se utiliza tanto para trasladar archivos entre carpetas como para renombrar directorios. Por ejemplo:
move C:\Temp\archivo.txt C:\Datos\archivo.txt
o bien:
move CarpetaAntigua CarpetaNueva
para cambiar el nombre de una carpeta manteniéndola en el mismo nivel.

  Cómo solucionar si un disco duro externo se desconecta solo en Windows

Renombrado masivo y manipulación de nombres de archivos

Otra tarea muy común en la administración con CMD es renombrar muchos ficheros de golpe, por ejemplo para añadir un prefijo, un sufijo o cambiar una extensión de forma homogénea.

El comando clave aquí es REN (o RENAME). Para algo sencillo, basta un ren foto1.jpg viaje1.jpg. Pero la verdadera potencia sale cuando lo combinas con comodines y FOR. Por ejemplo, para anteponer un texto a todos los archivos de una carpeta podrías usar:
for %a in (*.*) do ren "%a" "prefijo - %a".

Si lo que te interesa es añadir un sufijo a cada archivo, el patrón sería similar:
for %a in (*.*) do ren "%a" "%~na - sufijo%~xa"
donde %~na representa el nombre sin extensión y %~xa la extensión original. Así evitas romper las extensiones.

Cuando necesitas renombrar el mismo archivo en muchas carpetas y subcarpetas, se puede tirar de FOR /R, que recorre recursivamente un árbol de directorios. Un ejemplo:
for /R %G in (readme.txt) do ren "%G" "readme.md"
buscará todos los readme.txt desde el directorio actual hacia abajo y los cambiará a readme.md.

Ten en cuenta que REN funciona solo con nombres, así que si quieres hacer sustituciones más complejas o basadas en patrones elaborados, quizá te interese combinar CMD con otras herramientas o lenguajes, pero para tareas de clasificación y limpieza rápida REN junto con FOR cubre la mayoría de necesidades.

Eliminar archivos y directorios de forma segura

En cualquier tarea de administración llega el momento de eliminar archivos y carpetas que ya no se necesitan. Hacerlo bien desde CMD requiere conocer unas cuantas opciones para evitar sustos o confirmaciones innecesarias.

Para ficheros individuales el comando estándar es DEL. Puedes usarlo sin parámetros, pero resulta más cómodo trabajar con:
del /Q archivo.log
para que no pida confirmación, o con /F si quieres forzar el borrado de archivos de solo lectura. Para borrar muchos archivos de extensión concreta en todo un árbol, del /S *.bak se encargará de recorrer subdirectorios.

Si necesitas borrar el contenido de una carpeta pero dejando la carpeta vacía, puedes combinar DEL y FOR para afinar qué eliminas y qué no, o tirar de del /Q /F *.* dentro del directorio deseado, revisando antes que no haya nada crítico.

En cuanto a directorios, como se vio antes, RMDIR o RD con el parámetro /S eliminan tanto la carpeta como todo lo que contenga: rmdir /S /Q C:\Temp\Antiguo. Usar /Q evita confirmaciones y es habitual en scripts automatizados.

Aunque estos comandos borran ficheros para el usuario, a nivel bajo no siempre son irrecuperables, por lo que en entornos sensibles conviene combinar esta limpieza con herramientas específicas de borrado seguro. Desde el punto de vista de administración diaria, sin embargo, DEL y RMDIR suelen ser suficientes.

Comandos CMD avanzados relacionados con archivos y sistema

Además de las operaciones puramente de ficheros, el Símbolo del sistema de Windows incluye un buen repertorio de comandos avanzados que afectan a atributos, permisos o integridad de datos, muy útiles cuando ya te manejas con lo básico.

Un clásico es ATTRIB, que muestra o modifica los atributos de un archivo: solo lectura, oculto, de sistema, etc. Por ejemplo:
attrib +r +h archivo.txt
lo marca como de solo lectura y oculto, mientras que con signos menos (-r -h) eliminarías esos atributos. Puede aplicarse de forma recursiva con /S y a directorios con /D. Para inspecciones más profundas sobre atributos y cifrado consulta inspeccionar atributos y cifrado de archivos.

Las asociaciones entre extensiones y tipos de archivo se gestionan mediante ASSOC y FTYPE. ASSOC relaciona una extensión (por ejemplo .txt) con un tipo de archivo lógico, y FTYPE asocia ese tipo con un comando concreto. Juntos permiten personalizar cómo se abren ciertos archivos desde el explorador o desde la línea de comandos.

Para trabajar con permisos NTFS está ICACLS, que genera, modifica y restaura listas de control de acceso (DACL). Con él puedes, por ejemplo, exportar los permisos de una carpeta a un archivo y luego restaurarlos en otra ubicación, algo muy útil cuando mueves datos sensibles entre servidores o discos.

Si sospechas que hay archivos dañados, SFC y CHKDSK son tus aliados. SFC comprueba la integridad de los ficheros del sistema y repara los que estén corruptos usando copias en caché, mientras que CHKDSK revisa tanto la estructura lógica del sistema de archivos como la superficie del disco, pudiendo marcar sectores defectuosos y corregir problemas de directorio.

  Cómo abrir y analizar archivos ETL en Windows Performance Analyzer (WPA)

Para tareas de administración más globales, DISKPART permite gestionar particiones y volúmenes desde consola, FSUTIL ofrece funciones avanzadas sobre volúmenes y sistemas de archivos, y BCDEDIT sirve para modificar la configuración de arranque de Windows. Aunque no son comandos de archivos en el sentido clásico, afectan directamente a cómo y dónde se almacenan y gestionan los datos.

Variables de entorno, scripts .cmd y flujo de ejecución

Cuando empiezas a escribir tus propios archivos por lotes .cmd, no basta con conocer comandos sueltos: necesitas controlar el flujo de ejecución, las variables y el entorno de la consola.

El comando SET permite mostrar, crear o modificar variables de entorno. Por ejemplo, set RUTA_PROYECTO=C:\Proyectos\Web define una variable que luego puedes reutilizar en el mismo script como %RUTA_PROYECTO%. Para que los cambios queden limitados al ámbito del lote se usan SETLOCAL y ENDLOCAL, que inician y terminan una sección con variables locales.

Con IF puedes hacer procesamiento condicional dentro del .cmd, por ejemplo comprobando si un archivo existe antes de copiarlo o renombrarlo. Mientras tanto, GOTO permite saltar a etiquetas específicas dentro del script para controlar la lógica de ejecución, y CALL se utiliza para invocar otros archivos por lotes desde uno principal.

Para pausar un script a la espera de intervención del usuario se usa PAUSE, que muestra un mensaje genérico y espera a que pulses una tecla, y con ECHO puedes controlar lo que se muestra en pantalla (incluido activar o desactivar la visualización de los comandos con echo on/off).

Comandos como PUSHD y POPD facilitan cambiar de directorio dentro de un lote sin perder la referencia de dónde estabas: PUSHD guarda el directorio actual y se mueve al nuevo, y POPD te devuelve al guardado. Esto es muy útil cuando un script salta entre muchas rutas distintas para realizar copias, listados o limpiezas.

Otros comandos como SHIFT (desplazar parámetros), REM (comentarios) o TITLE (cambiar el título de la ventana) completan el ecosistema para crear .cmd más legibles, reutilizables y fáciles de depurar.

Comandos de diagnóstico y sistema útiles para administradores

Aunque la intención principal sea gestionar ficheros, en el día a día vas a recurrir a menudo a comandos de diagnóstico y sistema que también se ejecutan desde CMD y que encajan muy bien en scripts de mantenimiento, e incluso imprimir archivos desde CMD.

Para obtener una visión general de la máquina está SYSTEMINFO, que devuelve datos sobre el sistema operativo, procesador, memoria RAM, tiempo de arranque, hotfix instalados, etc. Es ideal para documentar equipos o hacer auditorías rápidas.

En el terreno de la red, IPCONFIG muestra información de las interfaces, incluyendo IP, máscara y puerta de enlace; NETSTAT enseña conexiones activas y estadísticas de protocolos; y TRACERT permite seguir el camino de los paquetes hasta un destino concreto, muy útil para diagnosticar problemas de conectividad.

Si quieres revisar procesos en ejecución, TASKLIST lista todo lo que está corriendo junto con el uso de memoria, mientras que TASKKILL permite cerrar un proceso indicando su PID o nombre de imagen, por ejemplo taskkill /PID 1234.

Para saber la versión exacta de Windows tienes VER, aunque para algo más detallado es mejor volver a SYSTEMINFO. Si quieras revisar controladores instalados, DRIVERQUERY devuelve la lista completa con nombres de módulo y tipos de controlador.

En lo referente a mantenimiento de discos, además de CHKDSK aparecen DEFRAG para desfragmentar unidades mecánicas y CLEANMGR para lanzar el liberador de espacio en disco desde la consola. Y para programar operaciones a horas concretas tienes SCHTASKS, que permite crear, consultar, modificar y borrar tareas programadas.

Por último, cuando quieras apagar, reiniciar o cerrar sesión directamente desde CMD, puedes usar SHUTDOWN con distintos parámetros (por ejemplo shutdown -s -t 60 para apagar en 60 segundos o shutdown -r para reiniciar) y LOGOFF para cerrar la sesión del usuario actual manteniendo el equipo encendido.

Todos estos comandos, combinados con los de gestión de archivos y directorios, te permiten construir scripts .cmd muy completos que automatizan desde copias de seguridad y organización de contenidos hasta pequeñas tareas de administración y diagnóstico del sistema, reduciendo errores manuales y ganando mucha velocidad en el trabajo diario.

vista previa de archivos sin abrir con QuickLook
Artículo relacionado:
Vista previa de archivos en Windows: QuickLook, Peek y panel nativo