Los caracteres comodín constituyen una práctica
taquigrafía para especificar varios nombres de archivo
o directorio con un solo nombre. Dos de los caracteres comodín
más útiles son * y ?. El asterisco * equivale a cualquier secuencia (cadena) de caracteres
(incluida la ausencia de caracteres) y el signo de interrogación ? equivale a cualquier carácter individual.
El
comodín * |
 |
El comodín * significa “cualquier carácter,
incluida la ausencia de caracteres”. Supongamos que ha
creado los siguientes archivos en el directorio de trabajo actual:
$ lsf miarchivo miarchivo2 miarchivo3 xenic suarchivo |
Para obtener una lista sólo de los nombres de archivo
que empiecen por “miarchivo”, escriba:
$ lsf miarchivo* miarchivo miarchivo2 miarchivo3 |
Para obtener una lista de los nombres de archivo que contengan “archivo”, escriba:
$ lsf *archivo* miarchivo miarchivo2 miarchivo3 suarchivo |
El
comodín ? |
 |
El comodín ? significa “cualquier carácter
individual”. Aunque es probable que no utilice el comodín ? con tanta frecuencia como el comodín *, esto no le resta utilidad. Por ejemplo, si desea
obtener una lista sólo de los archivos que empiecen por miarchivo y terminen en un solo carácter adicional,
escriba:
$ lsf miarchivo? miarchivo2 miarchivo3 |
El carácter comodín ? equivale exactamente a un carácter.
Por tanto, miarchivo no se presenta en la lista anterior porque no
tenía otro carácter al final.
Utilización
del carácter comodín * con los comandos mv, cp
y rm |
 |
A menudo, los caracteres comodín resultan útiles
cuando se desea trasladar varios archivos de un directorio a otro
o copiarlos en otro directorio. Por ejemplo, supongamos que tiene
dos directorios directamente debajo del directorio actual, que se
llaman nuevos y antiguos, y que estos directorios contienen los siguientes
archivos:
$ lsf nuevos miarchivo miarchivo2 lsf antiguos miarchivo3 miarchivo4 |
Para trasladar todos los archivos del directorio nuevos al directorio antiguos, escriba:
$ mv nuevos/* antiguos $ lsf nuevos Los archivos ya no están en el directorio nuevos. lsf antiguos miarchivo miarchivo2 miarchivo3 miarchivo4 Están en el directorio antiguos. |
Puede llevar a cabo una operación parecida con el
comando cp. Por ejemplo, para copiar todos los archivos del
directorio antiguos en el directorio nuevos, escriba:
De un modo parecido, puede utilizar los caracteres comodín
con el comando rm. Por ejemplo, para eliminar todos los archivos
del directorio nuevos, escriba:
Para
obtener más información:
Consulte la página de manual regexp(5)
para obtener las características generales de los comodines * y ?. Con respecto a las características adicionales
relacionadas con shells individuales: si utiliza el shell POSIX, consulte
la página de manual sh-posix(1);
si utiliza el shell C, consulte la página de manual csh(1).