Comodines

Mantenido el

En lugar de indicar los archivos uno por uno, puedes usar un comodín como *.txt para referirte a todos los archivos que cumplan una condición. Es una técnica básica que funciona con muchos comandos, como dir, copy, del y ren.

En este artículo se explica qué significan * y ?, cómo usarlos con cada comando y los errores en los que suelen caer los principiantes.

Resumen

SímboloSignificadoEjemplo
*Cualquier cadena de cero o más caracteres*.txt (todos los archivos txt)
?Cualquier carácter individualreport?.txt (report1.txt, reportA.txt, etc.)
  • El propio comando expande el comodín. El símbolo del sistema no lo hace.
  • Los comodines no se pueden usar en medio de la ruta de una carpeta (como C:\Us*\Documents).
  • Una eliminación como del *.doc puede coincidir con archivos no deseados. Comprueba antes con dir.

Conceptos básicos de los comodines

* (asterisco)

* coincide con cualquier cadena de cero o más caracteres.

Mostrar_archivos_con_extensión_txt
dir *.txt
Mostrar_archivos_que_empiezan_por_report
dir report*
Mostrar_archivos_cuyo_nombre_contiene_log
dir *log*
- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>dir /b *log*
app.log
catalog.csv
login.txt
C:\users\user>

? (signo de interrogación)

? coincide con cualquier carácter individual. Es útil cuando quieres limitar el número de caracteres.

Archivos_que_se_diferencian_en_un_carácter,_como_data1.csv_a_data9.csv
dir data?.csv
- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>dir /b data?.csv
data1.csv
data2.csv
dataA.csv
C:\users\user>
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

data10.csv no coincide porque solo hay un ?. Para dos caracteres, escribe data??.csv. Además, como explica el cuadro de información siguiente, data?.csv también coincide con data.csv.

Sobre un ? al final del nombre

Un ? situado al final de la parte del nombre coincide con “un carácter o ninguno”. Por ejemplo, dir ab? coincide con abc y también con ab. Un ? en medio siempre coincide exactamente con un carácter.

*.* y *.

PatrónCon qué coincide
*.*Todos los archivos (incluidos los que no tienen extensión)
*.Archivos sin extensión
*Todos los archivos

*.* no significa “archivos que tienen extensión”. Coincide con todos los archivos, incluidos los que no tienen extensión.

Ejemplos por comando

dir: listar y buscar

Buscar_archivos_log_incluidas_las_subcarpetas
dir /s /b *.log

Consulta

para más detalles.

copy / del / move: operar sobre varios archivos

Copiar_archivos_txt_a_la_carpeta_backup
copy *.txt backup\
Eliminar_archivos_tmp_de_una_vez
del *.tmp
Mover_archivos_que_empiezan_por_cache
move cache* archive\

Si la ruta contiene espacios, encierra la ruta completa, comodín incluido, entre comillas.

Ejemplo_con_una_ruta_con_espacios
del "C:\My Files\*.tmp"

ren: cambiar extensiones de una vez

Cambiar_txt_por_bak
ren *.txt *.bak

Con ren, también puedes usar comodines en el nuevo nombre para conservar la parte correspondiente del nombre original. Consulta

para más detalles.

for: procesar los archivos uno a uno

Si pones un comodín entre los paréntesis de for, cada archivo coincidente se asigna a la variable por turnos.

Mostrar_el_nombre_de_cada_archivo_txt
for %f in (*.txt) do @echo %f
Si lo usas en un archivo por lotes

El ejemplo anterior es para escribirlo directamente en el símbolo del sistema. En un archivo por lotes, cambia %f por %%f.

Usa for /d para trabajar con carpetas y for /r para buscar en subcarpetas de forma recursiva. Consulta

para más detalles.

if exist: comprobar si existe

Ejecutar_solo_si_coincide_al_menos_un_archivo_txt_(o_carpeta)
if exist *.txt echo Hay archivos txt

Consulta

para más detalles.

Precauciones

El propio comando expande el comodín

A diferencia de bash y shells similares, el símbolo del sistema no expande los comodines. Los pasa tal cual al comando.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>echo *.txt
*.txt
C:\users\user>

echo no interpreta los comodines, por lo que el texto se muestra tal cual. Que los comodines funcionen o no depende del comando.

ComandoComodines
dir copy del move ren typeAdmitidos
for (entre paréntesis)Admitidos
whereAdmitidos
rmdir (rd)No admitidos (combínalo con for /d)
cdNo admitidos
findNo admitidos en nombres de archivo (combínalo con for)
findstrEl patrón de búsqueda es una expresión regular; los nombres de archivo admiten comodines

No se admiten en medio de la ruta de una carpeta

Ejemplo_que_provoca_un_error
dir C:\Us*\Documents

Un comodín en medio del nombre de una carpeta no se interpreta como parte de la ruta. Para buscar en varias subcarpetas, usa /s.

Buscar_incluidas_las_subcarpetas
dir /s /b C:\Users\*.docx

Las extensiones más largas pueden coincidir (nombres cortos 8.3)

En los sistemas donde el sistema de archivos genera nombres cortos 8.3, un patrón también puede coincidir con archivos cuya extensión tiene cuatro o más caracteres. Esto ocurre porque en un nombre corto la extensión se trunca a tres caracteres.

Querías_solo_.doc,_pero_puede_coincidir_también_.docx
dir *.doc
- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>dir /b *.doc
letter.doc
report.docx
C:\users\user>

Si usas un patrón como del *.doc para eliminar archivos, es posible que también se eliminen los archivos .docx. Antes de cualquier operación destructiva, ejecuta dir con el mismo patrón y comprueba los archivos afectados.

Comprueba con dir antes de eliminar

Antes de ejecutar del o move, ejecuta dir /b patrón con el mismo patrón y comprueba siempre qué archivos se verán afectados. Ten especial cuidado con del *.*, que elimina todos los archivos de la carpeta actual (tras un mensaje de confirmación).

Cómo se tratan las carpetas

dir también muestra las carpetas que coinciden con el patrón, pero del no elimina las carpetas coincidentes (solo afecta a archivos). Para eliminar carpetas con un comodín, usa for /d de la siguiente manera.

Eliminar_las_carpetas_que_empiezan_por_tmp_con_su_contenido
for /d %d in (tmp*) do rd /s /q "%d"

En un archivo por lotes, cambia también aquí %d por %%d.

Archivos ocultos

De forma predeterminada, dir y del no afectan a los archivos ocultos ni a los de sistema. Para mostrarlos con dir, agrega la opción /a.

Mostrar_también_los_archivos_ocultos
dir /a *.txt

Para eliminar también los archivos ocultos con del, agrega /a, como en del /a *.tmp.

Tabla resumen

ObjetivoEjemplo
Filtrar por extensióndir *.txt
Filtrar por el inicio del nombredir report*
Seleccionar archivos que difieren en un carácterdir data?.csv
Buscar archivos sin extensióndir *.
Buscar incluidas las subcarpetasdir /s /b *.log
Procesar los archivos uno a unofor %f in (*.txt) do ...
Cambiar extensiones de una vezren *.txt *.bak

Artículos relacionados

Cuestionario

Problema de práctica

¿Qué nombre de archivo coincide con data?.csv?

Elige una respuesta.

  1. data1.csv
  2. data10.csv
  3. data.txt

Problema de práctica

¿Quién expande los comodines en el símbolo del sistema?

Elige una respuesta.

  1. El símbolo del sistema los expande y luego pasa el resultado al comando
  2. El símbolo del sistema los pasa tal cual y el comando los interpreta
  3. El sistema de archivos de Windows los expande automáticamente
#Símbolo del sistema #Archivo por lotes #Comodín #Línea de comandos #Comando