Caracteres comodín de Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cp("File Copying") linux/BasicFileOperationsGroup -.-> linux/mv("File Moving/Renaming") linux/BasicFileOperationsGroup -.-> linux/rm("File Removing") linux/FileandDirectoryManagementGroup -.-> linux/cd("Directory Changing") linux/FileandDirectoryManagementGroup -.-> linux/mkdir("Directory Creating") linux/FileandDirectoryManagementGroup -.-> linux/wildcard("Wildcard Character") subgraph Lab Skills linux/ls -.-> lab-271447{{"Caracteres comodín de Linux"}} linux/cp -.-> lab-271447{{"Caracteres comodín de Linux"}} linux/mv -.-> lab-271447{{"Caracteres comodín de Linux"}} linux/rm -.-> lab-271447{{"Caracteres comodín de Linux"}} linux/cd -.-> lab-271447{{"Caracteres comodín de Linux"}} linux/mkdir -.-> lab-271447{{"Caracteres comodín de Linux"}} linux/wildcard -.-> lab-271447{{"Caracteres comodín de Linux"}} end

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:

  1. Primero, abre tu terminal y navega hasta el directorio del proyecto:

    cd ~/project
  2. Crea un directorio de práctica para este laboratorio (lab) y navega hacia él:

    mkdir -p wildcard_practice
    cd wildcard_practice
  3. Ahora, creemos algunos archivos de muestra con los que trabajar:

    touch file1.txt file2.txt file3.txt document1.pdf document2.pdf image.jpg
  4. Utiliza el comando ls para listar todos los archivos en el directorio:

    ls

    Deberías ver todos los archivos que acabas de crear:

    document1.pdf  document2.pdf  file1.txt  file2.txt  file3.txt  image.jpg
  5. Ahora, usemos el comodín asterisco para listar solo los archivos de texto:

    ls *.txt

    Este comando debería mostrar solo los archivos que terminan con .txt:

    file1.txt  file2.txt  file3.txt
  6. Tambié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.txt
  7. Para listar todos los documentos PDF:

    ls *.pdf

    Este 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:

  1. Asegúrate de que todavía estés en el directorio wildcard_practice:

    cd ~/project/wildcard_practice
  2. Creemos 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.log
  3. Para listar todos los archivos "file-?.txt", donde ? es un solo carácter:

    ls file-?.txt

    Este comando debería mostrar:

    file-a.txt  file-b.txt  file-c.txt
  4. De manera similar, para listar todos los archivos "test?.log":

    ls test?.log

    La salida debería ser:

    test1.log  test2.log  test3.log
  5. Puedes 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?.txt

    Esto debería mostrar:

    file1.txt  file2.txt  file3.txt
  6. El 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:

  1. Asegúrate de que todavía estés en el directorio wildcard_practice:

    cd ~/project/wildcard_practice
  2. Creemos algunos archivos adicionales con los que trabajar:

    touch data-1.csv data-2.csv data-3.csv data-a.csv data-b.csv
  3. Para 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].csv

    Esto debería mostrar:

    data-1.csv  data-2.csv  data-3.csv
  4. De manera similar, para listar archivos que tienen una letra en esa posición:

    ls data-[a-z].csv

    Esto debería mostrar:

    data-a.csv  data-b.csv
  5. Tambié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].csv

    Esto debería mostrar:

    data-1.csv  data-a.csv
  6. El 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].csv

    Este 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.

  1. Primero, asegúrate de que estés en el directorio wildcard_practice:

    cd ~/project/wildcard_practice
  2. Creemos un directorio de respaldo para almacenar copias de nuestros archivos:

    mkdir backup
  3. Copiemos todos los archivos de texto al directorio de respaldo usando el comodín asterisco:

    cp *.txt backup/
  4. 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.txt
  5. Ahora, creemos otro directorio para organizar diferentes tipos de archivos:

    mkdir csv_files pdf_files log_files
  6. Movamos todos los archivos CSV al directorio csv_files:

    mv *.csv csv_files/
  7. Movamos todos los archivos PDF al directorio pdf_files:

    mv *.pdf pdf_files/
  8. Movamos todos los archivos de registro (log) al directorio log_files:

    mv *.log log_files/
  9. 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.

  10. Finalmente, limpiemos eliminando todos los archivos de texto de respaldo que tengan un número en su nombre:

    rm backup/file[0-9].txt
  11. Verifiquemos 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:

  1. Usar el comodín asterisco (*) para coincidir con cualquier número de caracteres
  2. Usar el comodín signo de interrogación (?) para coincidir exactamente con un carácter
  3. Usar corchetes [] para coincidir con caracteres o rangos específicos
  4. 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.