GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso usare grep per mostrare solo i nomi dei file su Linux?

Per una semplice ricerca di file, puoi usare -l di grep e -r opzioni:

grep -rl "mystring"

Tutta la ricerca viene eseguita da grep. Ovviamente, se hai bisogno di selezionare i file su qualche altro parametro, find è la soluzione corretta:

find . -iname "*.php" -execdir grep -l "mystring" {} +

Il execdir L'opzione crea ogni comando grep per ogni directory e concatena i nomi dei file in un solo comando (+ ).


L'opzione standard grep -l (che è una L minuscola) potrebbe farlo.

Dallo standard Unix:

-l
    (The letter ell.) Write only the names of files containing selected
    lines to standard output. Pathnames are written once per file searched.
    If the standard input is searched, a pathname of (standard input) will
    be written, in the POSIX locale. In other locales, standard input may be
    replaced by something more appropriate in those locales.

Inoltre non hai bisogno di -H in questo caso.


Dal grep(1) pagina man:

  -l, --files-with-matches
          Suppress  normal  output;  instead  print the name of each input
          file from which output would normally have  been  printed.   The
          scanning  will  stop  on  the  first match.  (-l is specified by
          POSIX.)

Linux
  1. Come usare BusyBox su Linux

  2. Come uso cron in Linux

  3. Come usare TROVA in Linux

  4. Come usare Unzip in Linux

  5. Come usare il comando Su in Linux

Come utilizzare il comando SS di Linux

Come usare il comando nohup di Linux

Come usare traceroute su Kali Linux

Come utilizzare il comando Grep in Linux + utili esempi di Grep

Come utilizzare lo schermo Linux

Come usare grep in Linux