Polecenia, jak usunąć pierwszy wiersz z pliku tekstowego za pomocą powłoki bash

Polecenia, jak usunąć pierwszy wiersz z pliku tekstowego za pomocą powłoki bash

W tej krótkiej konfiguracji pokażemy wiele opcji, jak usunąć pierwszy wiersz z pliku tekstowego. Oto treść naszego przykładowego pliku.tekst.

plik $ cat.TXT line1 line2 line3 line4 


Możemy użyć sed Polecenie do usunięcia pierwszego wiersza powyższego pliku:

plik $ sed '1D'.TXT line2 line3 line4 

Powyższe wytworzy się, więc będziesz musiał przekierować Stout do nowego pliku:

plik $ sed '1D'.TXT> MyNewfile.tekst 

albo użyj -I opcja zmiany pliku na miejscu:

$ sed -i '1d'.plik txt $ cat.TXT line2 line3 line4 

Inna opcja usunięcia pierwszego wiersza pliku jest za pomocą ogon Komenda:

$ ogon -n +2 plik.TXT line2 line3 line4 

Ponownie użyj przekierowania stdout, aby utworzyć nowy plik bez pierwszej linii. Jeszcze kolejnym przykładem usunięcia pierwszego wiersza z pliku tekstowego jest użycie wyd Edytor tekstu:



plik $ cat.TXT line1 line2 line3 line4 $ printf "%s \ n" 1d w q | plik ED.TXT 24 18 $ CAT Plik.TXT line2 line3 line4 

To, co się stało printf polecenie wyprodukowania poleceń usuwania (1d), zapisu (w) i rezygnacji z (q) wyd Komenda. W poniższym przykładzie usuwamy pierwszy wiersz z pliku za pomocą vi Edytor tekstu:

plik $ cat.TXT line1 line2 line3 line4 $ vi -c ': 1d' -c ': wq' plik.txt lub lepszy $ ex -c ': 1d' -c ': wq' plik.plik txt $ cat.TXT line2 line3 line4 

Opcje usunięcia pierwszej linii z pliku po prostu się gromadzą. Tutaj używamy Awk polecić, aby zrobić to samo:

plik $ cat.txt line1 line2 line3 line4 $ awk 'nr> 1 print'.TXT line2 line3 line4 


Zakończymy przykładem, jak usunąć linię FISRT ze wszystkich plików w katalogu:

$ ls plik 1.plik txt2.tekst 

Musimy pliki znajdujące się w naszym bieżącym katalogu roboczym. Każdy plik zawiera 4 wiersz:

$ grep linia * plik 1.TXT: LINE1 FILE1.TXT: LINE2 FILE1.TXT: LINE3 FILL1.txt: Line4 File2.TXT: Line1 File2.txt: Line2 File2.TXT: Line3 File2.TXT: LINE4 

Możemy użyć pętli do usunięcia pierwszego wiersza z każdego pliku:

$ za i w $ (plik LS*.tekst ); do sed -i '1d' $ i; Zrobione $ grep line * plik 1.TXT: LINE2 FILE1.TXT: LINE3 FILL1.txt: Line4 File2.txt: Line2 File2.TXT: Line3 File2.TXT: LINE4 

Powiązane samouczki Linux:

  • Jak montować obraz ISO na Linux
  • Linux Pliki konfiguracyjne: Top 30 Najważniejsze
  • Wielokrotne Xarg z przykładami
  • Mastering Bash Script Loops
  • Jak połączyć się z serwerem FTP za pomocą Pythona
  • Jak dołączyć do pliku na wierszu poleceń Bash Shell
  • Jak skonfigurować serwer OpenVPN na Ubuntu 20.04
  • Jak usunąć plik na Ubuntu Linux
  • Pobierz plik z adresu URL w systemie Linux za pomocą wiersza poleceń
  • Jak otwierać pliki ISO na Ubuntu Linux