Następujący grep
grep -r -e -n coll *
wyświetli się
fullpath/filename: <tag-name>coll</tag-name>
Chciałbym wiedzieć, który wiersz ma następujący tekst, próbowałem dodać -n
, ale to nie działało. Próbowałem dodać | grep -n *
, ale zrobiło to coś dziwnego.
To, co chciałbym zobaczyć (nie dbam o format) to
fullpath/filename:10: <tag-name>coll</tag-name>
command-line
grep
UAdapter
źródło
źródło
-n
opcji widzę numery linii . Czy możesz opublikować wynik tego, co dostajesz?Odpowiedzi:
Powinieneś umieścić
-e
na końcu listy opcji:grep -rne coll *
źródło
nie ma potrzeby -r & -e!
uzyskaj numer linii wzoru!
jeśli chcesz uzyskać tylko numer wiersza jako wynik, dodaj do niego kolejne polecenie grep!
źródło
cut
, np.cut -f1 -d:
Aby grepować wzór w określonym pliku i uzyskać pasujące linie:
lub używając
cut
zgodnie z sugestią @wjandrea:gdzie
<Pattern>
jest cytowanym globalnym wzorcem (użyj opcji-E
dla wyrażenia regularnego);<File>
to plik, który Cię interesuje;awk ...
filtruje numery linii na wyjściu grep (przed:
każdą linią);źródło
cut
niż Awk, np.cut -f1 -d: