GNU/Linux >> Znalost Linux >  >> Linux

Jak najít více řetězců v souborech?

Tato otázka zde již obsahuje odpovědi :Jak zkombinovat dva příkazy grep a zobrazit jejich výsledky dohromady?

(4 odpovědi)
Uzavřeno před 7 lety.

K vyhledání souborů s daným řetězcem používám následující příkaz:

find /var/www/http -type f | xargs grep -iR "STRING1"

Jak ale najdu soubory, které obsahují „STRING1“ NEBO „STRING2“ NEBO „STRING3“?

Tento kód nefunguje:

find /var/www/http -type f | xargs grep -iR "STRING1" | xargs grep -iR "STRING2"

Přijatá odpověď:

POSIXly pomocí grep s -E možnost:

find /var/www/http -type f -exec grep -iE 'STRING1|STRING2' /dev/null {} +

Nebo -e :

find /var/www/http -type f -exec grep -i -e 'STRING' -e 'STRING2' /dev/null {} +

S některými implementacemi, alespoň na systémech GNU, OSX a FreeBSD, můžete uniknout | :

find /var/www/http -type f -exec grep -i 'STRING1\|STRING2' /dev/null {} +

Linux
  1. Jak komprimovat více souborů v systému Linux

  2. Grep pro více řetězců v souborech a pak seznam souborů v pořadí velikosti?

  3. Jak vyhledávat v konkrétních souborech odpovídajících vzoru?

  1. Jak přejmenovat více souborů pomocí funkce Najít?

  2. Jak prohledávat obsah více souborů pdf?

  3. Příkaz Linux:Jak „najít“ pouze textové soubory?

  1. Jak používat příkaz Grep k vyhledání textu v souborech

  2. Jak Grep v souborech Pdf?

  3. Jak v Linuxu najdu všechny soubory obsahující konkrétní text?