Cómo buscar un archivo en Linux

Si está intentando buscar un archivo en Linux, existen algunas formas de hacerlo, incluido el uso de la terminal o las aplicaciones en pantalla. Esta guía le mostrará cómo.

No importa qué tan cuidadoso sea con la administración de archivos, eventualmente se preguntará dónde está un documento en particular. Esto es cierto en Mac, Windows e incluso Linux.

¿Cómo se busca un archivo en Linux? Resulta que el sistema operativo tiene algunas herramientas integradas muy poderosas para realizar búsquedas de archivos. Esto es lo que necesita saber.

Cómo buscar un archivo en Linux desde la línea de comandos

El método más poderoso para buscar archivos en Linux es mediante la línea de comandos. Así como Windows tiene un encontrar comando, también lo hace Linux. El comando UNIX encontrar Puede localizar muy fácilmente cualquier tipo de archivo que esté buscando. Ejecutado de la manera correcta, encontrar Incluso puede mirar dentro de sus archivos para identificar cadenas de texto particulares y puede limitar su búsqueda a aquellos archivos modificados recientemente.

Uso básico

El uso básico de buscar se parece al siguiente:

buscar /home/jeff -nombre “*.jpg”

Ese comando buscaría en mi directorio de inicio todos los archivos que terminen en .jpg. Sin embargo, se puede hacer mucho más con el comando.

Siguiendo enlaces simbólicos

Por defecto, el encontrar El comando ignorará los enlaces simbólicos. Sin embargo, el siguiente comando seguirá esos enlaces:

buscar -O3 -L /var/www/ -nombre “*.html”

En el ejemplo anterior, el comando enumeraría todos los archivos HTML en el /var/www árbol de directorios.

Localizar archivos vacíos

Ahora, digamos que desea identificar todos los archivos vacíos en un directorio. El siguiente comando haría precisamente eso:

encontrar . -tipo f -vacío

La clave aquí es la -tipo y -vacío parámetros, utilizados en lugar de los -nombre bandera en ejemplos anteriores.

Más ejemplos

Veamos un ejemplo básico más, que devolverá archivos modificados en los 6 días anteriores.

buscar /home -usuario persona aleatoria -mtime 6 -iname «*.db»

En este comando, todos los archivos que terminan en .db aparecer en la lista, ignorando las mayúsculas y minúsculas, pero solo si los archivos han sido modificados en los últimos 6 días por un usuario llamado Persona aleatoria.

encontrar con mtime

Esta ejecución devuelve todos los archivos en el directorio dado modificados en los últimos 11 días.

Opciones y optimizaciones útiles para buscar archivos de Linux

Banderas adicionales pueden controlar qué orden encontrar aplica sus pruebas de búsqueda. Por defecto, encontrar filtra los resultados de la búsqueda según el nombre del archivo primero, antes de ejecutar cualquier otra prueba. Esta bandera sería -O1pero realmente no hay razón para incluirlo.

Si pasas el -O2 bandera, encontrar filtros basados ​​en el nombre del archivo, luego el tipo de archivo. La tercera opción, -O3reordena automáticamente la búsqueda según el uso eficiente de los recursos y la probabilidad de obtener resultados relevantes.

Puede cambiar más comportamientos predeterminados utilizando estos parámetros:

  • -profundidad máxima X: busca en el directorio especificado y sus subdirectorios, hasta una profundidad máxima de X.
  • -iname: busca archivos, ignorando las mayúsculas.
  • -no: solo produce resultados que no coinciden con el caso de prueba especificado.
  • -tipo f: busca solo archivos
  • -tipo d: busca solo directorios
  • -mtime X: devuelve sólo aquellos archivos modificados en el anterior X días.

Uso de Grep para localizar archivos según el contenido

Usado solo, encontrar solo filtrará sus archivos y directorios según los nombres de archivos y los metadatos. Sin embargo, es posible profundizar aún más y utilizar otro comando de Linux para buscar archivos según lo que contienen.

La herramienta para esto es la probada y verdadera. grep dominio. Así es como funciona.

encontrar . -type f -exec grep «forinstance» ‘{}’ ; -imprimir

Este comando revisará cada archivo (-tipo f) dentro del árbol de directorios actual (señalado por . en el comando). A continuación, se ejecuta grep «por ejemplo» en cada uno de esos archivos, imprimiendo los que contienen por ejemplo.

encontrar con grep ejecutivo

En este ejemplo, el encontrar El comando devuelve cualquier archivo que contenga el texto «Hola»

En el comando anterior, las llaves ({}) son un marcador de posición para los resultados del archivo devueltos por el encontrar dominio. Estos se colocan entre comillas simples () para evitar el envío grep un nombre de archivo deforme.

El -ejecutivo El comando termina con punto y coma (;), que necesita un escape (;)por lo que Linux no intenta interpretarlo como otro comando o parámetro.

Uso de Exec para llevar los resultados de su búsqueda un paso más allá

Ahora que sabes cómo enviar tu encontrar resultados a otro comando usando -ejecutivole interesará saber que puede hacer mucho más que solo grep los resultados de su búsqueda. De hecho, esa capacidad hace que sea bastante fácil modificar archivos en masa de forma rápida y sencilla.

encontrar . -nombre «rc.conf» -exec chmod o+r ‘{}’ ;

Emitido por el usuario root en el /etc directorio, el comando anterior buscaría todos los archivos llamados rc.conf. Cambiaría los permisos de cada uno de esos archivos para otorgarle al propietario del archivo permisos de lectura (chmod o+r).

Tenga en cuenta, -ejecutivo se ejecutará desde el directorio raíz de su instalación de Linux. Si prefiere ejecutar su comando adicional desde el directorio que contiene el archivo coincidente, use -execdir en cambio.

Por defecto, -ejecutivo y -execdir seguirán funcionando ininterrumpidamente por sí solos. Si prefiere ver mensajes antes de que el segundo comando haga algo, reemplace las opciones con -OK o -okdirrespectivamente.

buscar con la bandera ok y las indicaciones

Utilizando el -OK bandera, encontrar le avisará antes de realizar cualquier acción en los archivos que coincidan con sus parámetros de búsqueda

Para realmente aprovechar al máximo encontrares fundamental leer la entrada manual del comando.

Cómo buscar un archivo en Linux usando la GUI

Muchos administradores de archivos GUI para Linux también admitirán búsquedas. En Ubuntu, puedes buscar archivos específicos usando el Archivos solicitud. Simplemente haga clic en el ícono de la carpeta en el Dock y luego en la lupa.

cómo buscar un archivo en Linux usando la GUI

Esta herramienta GUI le permite filtrar por tipo de archivo y cuándo se accedió o modificó el archivo por última vez. Lo que no tiene con esta opción es la capacidad de ejecutar otros comandos rápidamente en los resultados de su búsqueda.

Conozca los entresijos de Linux

Ya sea que sea nuevo en el sistema operativo Linux o que lo haya estado ejecutando durante años, siempre puede mejorar sus habilidades. Ahora que sabe cómo buscar un archivo en Linux, puede resultar útil saber cómo utilizar SCP para transferir el archivo a otra máquina.

Si desea limitar el acceso a los archivos, primero deberá enumerar los usuarios de Linux.