GNU/Linux >> Linux Esercitazione >  >> Linux

Trovare file leggibili dall'uomo su unix

Usa:

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

find ti darà un elenco di file.

xargs file eseguirà file comando su ciascuna delle righe dall'input reindirizzato.


trova e file sono tuoi amici qui:

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

Questo troverà qualsiasi file (NOTA:non troverà collegamenti simbolici directory socket, ecc., solo file regolari) in /dir/to/search ed esegui sh -c 'file -b {} | testo grep &>/dev/null'; che esamina il tipo di file e cerca il testo nella descrizione. Se questo restituisce true (cioè, il testo è nella riga), allora stampa il nome del file.

NOTA:usare il flag -b per file significa che il nome del file non viene stampato e quindi non può creare alcun problema con grep . Ad esempio, senza il -b flag il file binario gettext verrebbe erroneamente rilevato come file di testo.

Ad esempio,

[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

Se vuoi cercare nei file compressi usa --uncompress bandiera da archiviare. Per ulteriori informazioni e flag da archiviare vedere man file.


Linux
  1. Trova file e directory su Linux con il comando find

  2. Trovare file nella riga di comando (come fare per)

  3. Come trovare un file in Linux in tutte le directory in modo ricorsivo

  4. Trova tutti i file Python nel file system Linux?

  5. Come trovare ed eliminare directory e file vuoti in Unix

Trova file di grandi dimensioni in Linux

Come trovare file in Debian 10

Trova i file persi con Scalpel

Come escludere una directory durante la ricerca di file in Linux

Come trovare file basati su timestamp in Linux

Come trovare i file modificati nelle ultime 24 ore in Linux