Jak wydrukować pierwsze 20 pasujących wierszy za pomocą edytora „ed”?


1

Biorąc pod uwagę plik o ogromnym rozmiarze, mogę edytować za pomocą ed, a następnie wydać następujące polecenie.

g/real/p

Które wydrukują wszystkie wiersze zawierające „prawdziwe”.

Chcę wydrukować pierwsze 20.

Wiem sed, grep, head itd. Ale chcę poprawić swoje umiejętności ed.


Nie wiem ed, ale | head -n20?
Rob

1
Cześć, próbuję znaleźć rozwiązanie tylko przy użyciu ed.
Bryan Hunt

Odpowiedzi:


0

Możesz określić zakresy przed poleceniami w formularzu from,to.

1,4p

wypisuje linie 1-4.


0

Oto jeden ze sposobów:

ed -s infile <<IN
v/PATTERN/d               # delete all lines NOT matching PATTERN
,w !head -n20             # pass the addressed lines as input to shell command
u                         # undo deletion: not needed if you don't save changes
q                         # quit editor
IN
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.