GNU/Linux >> Tutoriales Linux >  >> Linux

Encontrar archivos legibles por humanos en Unix

Usar:

find /dir/to/search -type f | xargs file | grep text

find le dará una lista de archivos.

xargs file ejecutará el file comando en cada una de las líneas de la entrada canalizada.


buscar y archivo son tus amigos aquí:

find /dir/to/search -type f -exec sh -c 'file -b {} | grep text &>/dev/null' \; -print

Esto encontrará cualquier archivo (NOTA:no encontrará sockets de directorios de enlaces simbólicos, etc., solo archivos normales) en /dir/to/search y ejecute sh -c 'archivo -b {} | texto grep &>/dev/null'; que mira el tipo de archivo y busca texto en la descripción. Si esto devuelve verdadero (es decir, el texto está en la línea), entonces imprime el nombre del archivo.

NOTA:usar el indicador -b para archivar significa que el nombre del archivo no se imprime y, por lo tanto, no puede crear ningún problema con grep . Por ejemplo, sin el -b marcar el archivo binario gettext se detectaría erróneamente como un archivo de texto.

Por ejemplo,

[email protected]# find /bin -exec sh -c 'file -b {} |  grep text &>/dev/null' \; -print
/bin/gunzip
/bin/svnshell.sh
/bin/unicode_stop
/bin/unicode_start
/bin/zcat
/bin/redhat_lsb_init
[email protected]# find /bin -type f -name *text*
/bin/gettext

Si desea buscar en archivos comprimidos, use el --uncompress bandera para archivar. Para más información y banderas para archivar ver archivo man.


Linux
  1. Encuentra archivos y directorios en Linux con el comando de búsqueda

  2. ¿Encontrar todos los archivos de Python en el sistema de archivos de Linux?

  3. Cómo encontrar y eliminar directorios y archivos vacíos en Unix

  4. Iterar sobre una lista de archivos con espacios

  5. Encontrar archivos ejecutables usando ls y grep

Encuentra archivos grandes en Linux

Cómo encontrar archivos en Debian 10

Encuentra archivos perdidos con Scalpel

Cómo excluir un directorio al buscar archivos en Linux

Cómo encontrar archivos basados ​​en la marca de tiempo en Linux

Cómo encontrar archivos modificados en las últimas 24 horas en Linux