grep wypisuje każdy plik jeden raz


8

Szukam tekstu w plikach, ale trzy to dużo plików, a szukany tekst pojawia się kilka razy w jednym pliku, jak mogę otrzymać listę plików zawierających szukany tekst z każdym plikiem wymienionym tylko raz?

Odpowiedzi:


15
grep -l xyz file*

gdzie xyz to wzorzec wyszukiwania, a plik * to lista plików do przeszukania


1

grep -l LIST PATTERNjest droga. Alternatywnie można użyć xargstej samej rzeczy:

xargs grep "My Search Pattern"  < input.txt 

xargsjest szczególnie przydatny, gdy chcesz użyć grepkilku nazw plików przekazywanych z potoku, na przykład:

find ~/Documents ~/bin -print0 | xargs -0 grep 'Search Term'
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.