La mayoría de las veces, está buscando un archivo en Linux y no sabe exactamente su verdadera ubicación en el disco del sistema.
Hay múltiples formas deencontrar archivos en la línea de comandos de Linux. La forma más común y confiable es usar el comando de búsqueda.
El comando de búsqueda es extremadamente versátil y tiene demasiados usos, pero aquí me centraré en buscar archivos por su nombre.
Explicaré cómo usar el comando ‘buscar’ para:
- Búsqueda de archivos usando su nombre
- Búsqueda de archivos con su nombre exacto
- Búsqueda de archivos para un patrón particular
- Buscando varios archivos
- Exclusión de ciertos archivos de los resultados de búsqueda.
Además de estos, también mostraré cómo usar el comando grep con el resultado del comando find. Comencemos primero con una descripción general de lafind
dominio.
La utilidad ‘find’ busca archivos que coincidan con un determinado conjunto de parámetros como el nombre del archivo, su fecha de modificación, su extensión, etc. Tiene el siguiente formato:
find path pattern
Si no se especifica una ruta, busca en el directorio actual y sus subdirectorios.
Búsqueda de archivos usando su nombre
Buscar un archivo con su nombre es una operación comúnmente utilizada con el comando de búsqueda. los-iname
La opción busca un archivo independientemente de su caso.
Para example, suponga que tiene dos archivos abc.txt y ABC.txt. Ambos tienen el mismo nombre pero diferentes casos. Usando el comando de búsqueda, obtienes ambos archivos en los resultados:
find -iname abc.txt
Búsqueda de archivos usando su nombre exacto
los-name
La opción distingue entre mayúsculas y minúsculas en contraste con la-iname
opción, por lo que obtendrá archivos con el nombre exacto.
Para examplebusquemos un archivo con el nombreabc.txt
:
find -name abc.txt
El nombre del archivo puede estar compuesto por comodines, como verá más adelante en esta guía.
Búsqueda de archivos con un patrón particular
También puede filtrar archivos que siguen un patrón determinado. Para eso, puedes usar comodines.
Digamos, por ejemplo, que está buscando todos los archivos de configuración en su sistema que terminan con la extensión ‘.conf’:
find /etc -type f -name "*.conf" | grep client.conf

De la misma manera, también puedebuscar archivos con el mismo nombre pero con cualquier extensiónde tres caracteres como:
find ~ -name "abc.???"

si tienes variosnombres de archivo que contienen una cadena comúndiga ‘VM’, el comando de búsqueda en este escenario será como:
find -name '*VM*'

Hasta ahora hemos usado un solo directorio (el directorio de inicio) con el comando ‘buscar’.
Tú también puedesbuscar en varios directoriosespecificándolos en la CLI:
find ~/Desktop/example1/ ~/Desktop/example2/ -name 'abc*.*'

Búsqueda de varios archivos y varios patrones
Suponga que desea encontrar varios archivos en un directorio que tiene.msi
y.txt
como tipos de archivos.
Aquí tienes que usar tanto elname
ytype
opciones en la CLI como:
find -type f ( -name "*.txt" -o -name "*.msi" )

En un enfoque similar, puede extender el comando anterior para obtener más archivos usando extra-o
opciones
Exclusión de ciertos archivos de los resultados de búsqueda
El comando de búsqueda también puede excluir ciertos tipos de archivos del resultado de la búsqueda:
find -name '*abc*' -type f ( ! -name '*.msi' )

Aquí, el comando ‘buscar’ buscará todos los archivos que tengan la cadena ‘abc’ en su nombre. Sin embargo, filtrará el.msi
tipo de archivos.
Otros ejemplos comunes del comando ‘buscar’
Tiene más opciones que se pueden usar con el comando ‘buscar’. Permítanme compartir algunos ejemplos de este tipo:
¿El sistema informa de poco espacio en disco? Encuentra archivos más grandes como este:
find -size +2000M
Usando el comando anterior, puede encontrar archivos que ocupan más de 2000 Megabytes de espacio.
En caso de que necesite guardar sus hallazgos para una investigación posterior, rediríjalos a un archivo:
find -name '*abc*' -type f ( ! -name '*.msi' ) > mysearch.txt

lostype
La opción con el comando de búsqueda abre muchas oportunidades.
Puede combinarlo con diferentes descriptores de archivos para diferentes tipos de archivos. Para example’f’ para un archivo normal, ‘d’ para un directorio, ‘l’ para un enlace simbólico, etc.
find /var/log -type f -name "*.log"
Conclusión
En esta guía, expliqué cómo buscar archivos por sus nombres usando el comando de búsqueda. Vio varias formas de reducir la ruta de búsqueda y, lo que es más importante, cómo incorporar los “comodines” para la búsqueda de patrones.
Hay muchos más usos del comando de búsqueda. Como puede usarlo para encontrar archivos modificados recientemente. Aquí hay algunos ejemplos más comunes si está interesado.
Siempre puede buscar en las páginas del manual para obtener información detallada sobre las diversas opciones con el comando ‘buscar’.