[zbędne]grep i dwa warunki

Przedsionek /dev/null
Awatar użytkownika
dedito
Moderator
Posty: 2198
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

[zbędne]grep i dwa warunki

Post autor: dedito » 03 listopada 2017, 17:07

Tom:-) pisze:
03 listopada 2017, 16:37
Potrzebuję znaleźć pliki, w których znajdują się obydwa ciągi znaków (nie jeden z nich) "x1" oraz "x2".

Nie zadowalają mnie wyniki polecenia:

Kod: Zaznacz cały

egrep -r 'x1|x2'
- grep poszukuje ciągów w liniach.
- użyłeś wyrażenia regularnego "|" które jest logiczną alternatywą (szukaj x1 lub x2).
Jeśli chodziło Ci o poszukiwanie wystąpienia tych dwóch ciągów w jednej linii wtedy zainteresuj się wyrażeniem regularnym "+" (szukaj x1 i x2) w składni poszukiwanego ciągu.
np.

Kod: Zaznacz cały

grep 'x1+x2' plik
dla wyszukania linii zawierających ciąg:
x1x2, x1cokolwiekx2, x1 cokolwiek innego x2, itp.

Tom:-)
Beginner
Posty: 280
Rejestracja: 01 grudnia 2008, 13:52
Lokalizacja: Zakopane

Re: grep i dwa warunki

Post autor: Tom:-) » 03 listopada 2017, 17:09

Ciągi znaków nie znajduję się w jednej linii, a w całym pliku

Awatar użytkownika
dedito
Moderator
Posty: 2198
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: grep i dwa warunki

Post autor: dedito » 03 listopada 2017, 17:49

W takim razie to zmienia postać rzeczy.
Ale co chcesz otrzymać w wyniku, tylko nazwy tych plików, czy coś jeszcze?

Tom:-)
Beginner
Posty: 280
Rejestracja: 01 grudnia 2008, 13:52
Lokalizacja: Zakopane

Re: grep i dwa warunki

Post autor: Tom:-) » 03 listopada 2017, 17:52

Tylko nazwy plików. Chcę się posłużyć rozwiązaniem w CLI.

Awatar użytkownika
lizard
Beginner
Posty: 207
Rejestracja: 08 lutego 2016, 18:47

Re: grep i dwa warunki

Post autor: lizard » 03 listopada 2017, 18:33

Dostałeś rozwiązanie.
dedito pisze:
03 listopada 2017, 17:07
Jeśli chodziło Ci o poszukiwanie wystąpienia tych dwóch ciągów w jednej linii wtedy zainteresuj się wyrażeniem regularnym "+" (szukaj x1 i x2) w składni poszukiwanego ciągu.
np.

Kod: Zaznacz cały

grep 'x1+x2' plik
dla wyszukania linii zawierających ciąg:
x1x2, x1cokolwiekx2, x1 cokolwiek innego x2, itp.
dedito, gdzie wyczytałeś o tym operatorze takie ciekawe rzeczy. '+' oznacza wystąpienie co najmniej raz znaku poprzedzającego.

Awatar użytkownika
dedito
Moderator
Posty: 2198
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Re: grep i dwa warunki

Post autor: dedito » 03 listopada 2017, 18:54

Zgadza się, pomyliło mi się z logiczną sumą.

Zablokowany