Introducción
Los comodines (wildcards) de Linux son caracteres especiales que te permiten buscar y manipular múltiples archivos a la vez basándote en patrones en sus nombres. Son herramientas poderosas para administrar archivos de manera eficiente en el entorno de línea de comandos. En este laboratorio (lab), aprenderás cómo usar diferentes comodines para realizar operaciones comunes, como listar, copiar y eliminar archivos basados en la coincidencia de patrones.
Comprendiendo el comodín asterisco (*)
El asterisco * es el carácter comodín más común en Linux. Representa cualquier número de caracteres (incluyendo cero caracteres) en un nombre de archivo. Esto lo hace increíblemente útil para trabajar con grupos de archivos que comparten patrones de nomenclatura similares.
Practiquemos el uso del comodín asterisco:
Primero, abre tu terminal y navega hasta el directorio del proyecto:
cd ~/projectCrea un directorio de práctica para este laboratorio (lab) y navega hacia él:
mkdir -p wildcard_practice cd wildcard_practiceAhora, creemos algunos archivos de muestra con los que trabajar:
touch file1.txt file2.txt file3.txt document1.pdf document2.pdf image.jpgUtiliza el comando
lspara listar todos los archivos en el directorio:lsDeberías ver todos los archivos que acabas de crear:
document1.pdf document2.pdf file1.txt file2.txt file3.txt image.jpgAhora, usemos el comodín asterisco para listar solo los archivos de texto:
ls *.txtEste comando debería mostrar solo los archivos que terminan con
.txt:file1.txt file2.txt file3.txtTambién puedes usar el comodín para coincidir con archivos que comienzan con un patrón específico. Para listar todos los archivos que comienzan con "file":
ls file*Este comando debería mostrar:
file1.txt file2.txt file3.txtPara listar todos los documentos PDF:
ls *.pdfEste comando debería mostrar:
document1.pdf document2.pdf
El comodín asterisco es versátil y se puede usar en cualquier posición del patrón. Por ejemplo, *1* coincidiría con cualquier archivo que tenga "1" en cualquier parte de su nombre.
Usando comodines con el signo de interrogación (?)
El comodín signo de interrogación ? representa exactamente un carácter. Es útil cuando quieres coincidir con archivos con nombres similares pero que difieren en un solo carácter en una posición específica.
Exploremos cómo funciona el comodín signo de interrogación:
Asegúrate de que todavía estés en el directorio
wildcard_practice:cd ~/project/wildcard_practiceCreemos algunos archivos adicionales para demostrar mejor el comodín signo de interrogación:
touch file-a.txt file-b.txt file-c.txt test1.log test2.log test3.logPara listar todos los archivos "file-?.txt", donde ? es un solo carácter:
ls file-?.txtEste comando debería mostrar:
file-a.txt file-b.txt file-c.txtDe manera similar, para listar todos los archivos "test?.log":
ls test?.logLa salida debería ser:
test1.log test2.log test3.logPuedes combinar múltiples signos de interrogación para coincidir con múltiples caracteres individuales. Por ejemplo, para coincidir con todos los archivos de texto con nombres de la forma "file?":
ls file?.txtEsto debería mostrar:
file1.txt file2.txt file3.txtEl comodín signo de interrogación es especialmente útil cuando necesitas coincidir con un patrón específico con variaciones en posiciones exactas. Por ejemplo, si quieres archivos que terminen con un número de un solo dígito seguido de .log:
ls test?.log
El comodín signo de interrogación es más específico que el asterisco, ya que coincide exactamente con un carácter, mientras que el asterisco puede coincidir con cualquier número de caracteres.
Usando corchetes [] para clases de caracteres
El comodín de corchetes [] te permite especificar un conjunto o rango de caracteres para coincidir en una posición específica en un nombre de archivo. Esto proporciona más precisión que los comodines asterisco o signo de interrogación.
Practiquemos el uso del comodín de corchetes:
Asegúrate de que todavía estés en el directorio
wildcard_practice:cd ~/project/wildcard_practiceCreemos algunos archivos adicionales con los que trabajar:
touch data-1.csv data-2.csv data-3.csv data-a.csv data-b.csvPara listar archivos que tienen un dígito en una posición específica, puedes usar la notación de corchetes con un rango:
ls data-[1-3].csvEsto debería mostrar:
data-1.csv data-2.csv data-3.csvDe manera similar, para listar archivos que tienen una letra en esa posición:
ls data-[a-z].csvEsto debería mostrar:
data-a.csv data-b.csvTambién puedes listar caracteres específicos dentro de los corchetes. Por ejemplo, para listar archivos con '1' o 'a' después de "data-":
ls data-[1a].csvEsto debería mostrar:
data-1.csv data-a.csvEl símbolo intercalado
^dentro de los corchetes niega la coincidencia. Para listar todos los archivos "data-" excepto aquellos que terminan con "1" o "2":ls data-[^12].csvEste comando debería mostrar:
data-3.csv data-a.csv data-b.csv
Los corchetes ofrecen un control preciso cuando necesitas coincidir con archivos que difieren en caracteres específicos en posiciones específicas.
Operaciones prácticas de archivos con comodines
Ahora que entendemos los diferentes tipos de comodines, usémoslos para realizar operaciones comunes de archivos, como copiar, mover y eliminar archivos.
Primero, asegúrate de que estés en el directorio
wildcard_practice:cd ~/project/wildcard_practiceCreemos un directorio de respaldo para almacenar copias de nuestros archivos:
mkdir backupCopiemos todos los archivos de texto al directorio de respaldo usando el comodín asterisco:
cp *.txt backup/Verifiquemos que los archivos se hayan copiado correctamente:
ls backup/Deberías ver todos los archivos de texto en el directorio de respaldo:
file-a.txt file-b.txt file-c.txt file1.txt file2.txt file3.txtAhora, creemos otro directorio para organizar diferentes tipos de archivos:
mkdir csv_files pdf_files log_filesMovamos todos los archivos CSV al directorio csv_files:
mv *.csv csv_files/Movamos todos los archivos PDF al directorio pdf_files:
mv *.pdf pdf_files/Movamos todos los archivos de registro (log) al directorio log_files:
mv *.log log_files/Comprobemos que cada directorio contiene los archivos correctos:
echo "CSV Files:" ls csv_files/ echo "PDF Files:" ls pdf_files/ echo "Log Files:" ls log_files/La salida debería mostrar los archivos correspondientes en cada directorio.
Finalmente, limpiemos eliminando todos los archivos de texto de respaldo que tengan un número en su nombre:
rm backup/file[0-9].txtVerifiquemos que solo queden los archivos de texto con nombres de letras en el directorio de respaldo:
ls backup/La salida debería mostrar:
file-a.txt file-b.txt file-c.txt
Estos ejemplos demuestran cómo los comodines pueden simplificar en gran medida las tareas de gestión de archivos que de otro modo requerirían múltiples comandos o manipulación manual de archivos individuales.
Resumen
En este laboratorio, has aprendido cómo usar los comodines de Linux para gestionar y manipular archivos de manera eficiente. Los conceptos clave cubiertos incluyen:
- Usar el comodín asterisco (*) para coincidir con cualquier número de caracteres
- Usar el comodín signo de interrogación (?) para coincidir exactamente con un carácter
- Usar corchetes [] para coincidir con caracteres o rangos específicos
- Aplicar comodines a operaciones comunes de archivos, como listar, copiar y eliminar archivos
Estas técnicas de comodines son herramientas esenciales para cualquier usuario de Linux, ya que ahorran tiempo y reducen errores al trabajar con múltiples archivos. Te permiten realizar operaciones complejas de archivos con comandos simples y concisos en lugar de tener que manipular cada archivo individualmente.
A medida que continúes trabajando con sistemas Linux, encontrarás numerosas oportunidades para aplicar estos patrones de comodines y optimizar tu flujo de trabajo y aumentar tu productividad.



