Formas de usar el comando ‘buscar’ para buscar directorios de manera más eficiente

Este tutorial lo guiará a través de las diferentes formas de encontrar un directorio en Linux. Como ya sabrá, en Linux todo es un archivo que incluye directorios. Y una de las cosas más comunes que hará un usuario de Linux dentro de la línea de comandos es buscar un archivo o un directorio.

Hay varios medios y utilidades diferentes que se utilizan para buscar archivos en la línea de comando, como buscar, localizar y cuál . Sin embargo, la última utilidad ( que ) solo se usa para localizar un comando.

Para el alcance de este tutorial, nos centraremos principalmente en la utilidad de búsqueda, que busca archivos en un sistema de archivos Linux en vivo y es más eficiente y confiable en comparación con la ubicación .

La desventaja de Locate es que lee una o más bases de datos creadas por updatedb , no busca en un sistema de archivos activo. Además, tampoco ofrece flexibilidad en cuanto a dónde buscar (punto de partida).

A continuación se muestra la sintaxis para ejecutar el comando de localización :

# locate [option] [search-pattern]

Para demostrar la desventaja de localizar , supongamos que estamos buscando un directorio nombrado pkgen el directorio de trabajo actual.

Nota : En el comando a continuación, la opción --basenameo -bindica que ubique solo coincida con el nombre de base del archivo (directorio) (que es exactamente pkg ) pero no la ruta ( / ruta / a / pkg ). Donde es un carácter globular, deshabilita el reemplazo implícito de pkg por * pkg * .

$ locate --basename 'pkg'

Buscar directorio usando el comando de localizaciónBuscar directorio usando el comando de localización

Como puede ver en la salida del comando anterior, Locate buscará comenzando desde el directorio raíz (/) , es por eso que otros directorios con el mismo nombre coinciden.

Por lo tanto, para solucionar este problema, utilice find siguiendo la sintaxis simplificada a continuación:

$ find starting-point options [expression]

Veamos algunos ejemplos.

Para buscar el mismo directorio (pkg)anterior, dentro del directorio de trabajo actual, ejecute el siguiente comando, donde la -namebandera lee la expresión que en este caso es el nombre base del directorio.

$ find . -name "pkg"

Si encuentra errores de ” Permiso denegado “, use el comando sudo así:

$ sudo find . -name "pkg"

Buscar un directorio usando el comando buscarBuscar un directorio usando el comando buscar

Puede evitar que find busque otros tipos de archivos, excepto directorios, utilizando -typeflag para especificar el tipo de archivo (en el siguiente comando dsignifica directorio) de la siguiente manera:

$ sudo find . -type d -name "pkg"

Además, si desea listar el directorio en un formato de lista larga, utilice el interruptor de acción -ls:

$ sudo find . -type d -name "pkg" -ls

Buscar y enumerar directorioBuscar y enumerar directorio

A continuación, la opción -inamehabilitará una búsqueda que no distinga entre mayúsculas y minúsculas:

$ sudo find . -type d -iname "pkg"
$ sudo find . -type d -iname "PKG"

Buscar directorio con distinción entre mayúsculas y minúsculasBuscar directorio con distinción entre mayúsculas y minúsculas

Para encontrar información de uso más interesante y avanzada, lea las páginas de manual de buscar y localizar .

$ man find
$ man locate

Como último comentario, el comando de búsqueda es más confiable y eficiente para buscar archivos (o directorios) en un sistema Linux cuando se compara con el comando de ubicación .

De la misma manera que antes, no olvide enviarnos sus comentarios o preguntas a través de la sección de comentarios a continuación. Por último, permanezca siempre conectado a Tecmint .

Comandos de Linux

Leave a Comment

Your email address will not be published. Required fields are marked *

Hazlo Linux