Usunąć określone numery wierszy z pliku tekstowego za pomocą sed?


46

Chcę usunąć jeden lub więcej określonych numerów linii z pliku. Jak mam to zrobić za pomocą sed?

Odpowiedzi:


63

Aby usunąć linie 2, 12-17 i 57 linii z pliku data.txtza pomocą sedmożna zrobić coś takiego:

 sed -e '2d;12,17d;57d' data.txt

do utworzenia kopii zapasowej oryginalnego pliku (z .bakrozszerzeniem) użyj -i.bakpolecenia.

 sed -i.bak -e '2d;12,17d;57d' data.txt
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.