Istnieje wiele poleceń i narzędzi Linuksa używanych do przetwarzania plików tekstowych. Ale są chwile, kiedy nie chcesz czytać całej zawartości pliku, ale raczej jego określoną część. Czy wiesz, że możesz użyć poleceń head i tail w systemie Linux, aby wyświetlić odpowiednio początek i koniec pliku?
Czytaj dalej, aby dowiedzieć się, jak używać tych dwóch poleceń do efektywnego przetwarzania i manipulowania tekstem w systemie Linux.
Co to jest dowództwo?
Polecenie head służy do drukowania początkowych części pliku. Odczytuje pliki od początku. Jeśli masz plik, który ma ponad tysiąc wierszy, otwarcie go i przeczytanie byłoby bardzo uciążliwe. Możesz łatwo wydrukować kilka linii od góry za pomocą polecenia head.
Składnia komendy head
Podstawowa składnia polecenia head to:
głowa[opcja][plik]
Oprócz komendy head dostępnych jest wiele opcji, z których niektóre zostaną omówione później. Do uzyskać pomoc dotyczącą wiersza poleceń jeśli chodzi o polecenie head, sprawdź jego stronę podręcznika, uruchamiając:
głowa mężczyzny
Jak korzystać z polecenia head
Na potrzeby tego przykładu utwórz plik: numery.txt. W pliku wypisz cyfry od 1 do 20 słownie. Możesz użyć dowolnego pliku, ale upewnij się, że ma on co najmniej 11 wierszy.
Korzystanie z domyślnego polecenia head
Domyślnie polecenie head wypisuje pierwsze 10 wierszy tekstu w pliku. Wypróbuj to z plikiem numbers.txt, wykonując to polecenie w swoim terminalu:
głowaliczby.tekst
Wydrukuje pierwsze 10 wierszy pliku:
jeden
dwa
trzy
cztery
pięć
sześć
siedem
osiem
dziewięć
dziesięć
Jeśli plik ma mniej niż 10 wierszy, polecenie head wypisze wszystkie obecne wiersze.
Wydrukuj pierwszą liczbę N linii
Możesz użyć polecenia head, aby wydrukować określoną liczbę wierszy zamiast domyślnych 10. Aby wydrukować pierwsze trzy wiersze pliku numbers.txt, wykonaj to polecenie:
głowa-N 3 liczby.tekst
Wynik:
jeden
dwa
trzy
Wyklucz ostatnie N linii za pomocą polecenia head
Tak jak możesz wydrukować pierwsze wiersze tekstu, możesz także zdecydować o wykluczeniu ostatnich N wierszy podczas drukowania. Możesz to zrobić, używając liczby ujemnej dla parametru N.
Aby wykluczyć ostatnie 15 wierszy pliku numbers.txt, uruchom:
głowa-N-15liczby.tekst
Wynik:
jeden
dwa
trzy
cztery
pięć
Wydrukuj pierwsze N znaków pliku
Polecenie head ma również opcję drukowania pierwszej liczby znaków lub bajtów w pliku. Możesz to zrobić za pomocą -C opcja. Aby wydrukować pierwsze 10 znaków, użyj:
głowa-C 10 liczby.tekst
Wyjście:
jeden
dwa
cz
Co to jest komenda ogona?
Jak sama nazwa wskazuje, polecenie tail wypisuje ostatnie wiersze pliku. Odczytuje pliki od końca i wyświetla końcowe linie.
Składnia polecenia ogona
Podstawowa składnia polecenia tail to:
ogon[opcja][plik]
Aby uzyskać więcej informacji na temat polecenia tail, sprawdź jego stronę podręcznika, wydając:
ogon mężczyzny
Jak korzystać z polecenia ogona
W poniższych przykładach użyjemy już utworzonego pliku numbers.txt.
Korzystanie z domyślnego polecenia ogona
Polecenie tail wyświetla 10 ostatnich wierszy pliku, gdy jest używane bez żadnych specjalnych opcji. Na przykład:
ogonliczby.tekst
Wyjście wyświetli ostatnie 10 linii, jak wspomniano:
jedenaście
dwanaście
trzynaście
czternaście
piętnaście
szesnaście
siedemnaście
osiemnaście
dziewiętnaście
20
Wydrukuj ostatnią liczbę N linii
W sytuacji, gdy nie chcesz drukować ostatnich 10 wierszy, ale konkretną liczbę, możesz skorzystać z funkcji -N możliwość osiągnięcia tego. Aby wydrukować ostatnie cztery wiersze pliku numbers.txt, wykonaj to polecenie:
ogon-N 4 liczby.tekst
Wynik:
siedemnaście
osiemnaście
dziewiętnaście
20
Drukuj linie po określonej linii
Jeśli chcesz zacząć od określonej linii N, możesz użyć metody -N opcję obok liczby dodatniej, aby to osiągnąć. Aby wydrukować dane wyjściowe pliku numbers.txt z 17. linii, wykonaj to polecenie:
ogon-N +17 liczby.tekst
Wynik:
siedemnaście
osiemnaście
dziewiętnaście
20
Wydrukuj ostatnie N znaków pliku
Podobnie jak polecenie head, możesz wydrukować kilka ostatnich znaków w pliku, używając -C opcja. Aby wydrukować ostatnie 10 znaków z pliku numbers.txt, wykonaj to polecenie:
ogon-C 10 liczby.tekst
Wynik:
en
20
Używanie poleceń head and tail z wieloma plikami
Możesz także użyć funkcji Head and Tail, aby wydrukować więcej niż jeden plik naraz. Oto składnia używania poleceń z wieloma plikami wejściowymi:
głowa[opcja][plik1][plik2]
ogon[opcja][plik1][plik2]
Używanie komend głowa i ogon razem
Możesz nawet użyć głowy i ogona w tym samym poleceniu, używając symbolu rury. Symbol fajki przekierowuje wyjście jednego polecenia jako wkład do innego.
Na przykład, aby uzyskać szóstą, siódmą i ósmą linię, możesz wykonać to polecenie:
head -n 8 numerów.txt | ogon -n 3
Wynik:
sześć
siedem
osiem
We wspomnianym jednym wierszu polecenie head wyświetlało zatem pierwsze osiem wierszy pliku dane wyjściowe zostały przekazane do polecenia tail, które wydrukowało trzy ostatnie wiersze przekierowania wyjście.
głowa i ogon: pomocne polecenia manipulacji tekstem
Linux oferuje wiele poleceń, które pomogą Ci skutecznie manipulować i przetwarzać pliki tekstowe, a polecenia head i tail to tylko dwa z wielu. Najpopularniejsze polecenia manipulacji tekstem to grep, uniq, sort, sed, awk itp. Każdy z nich spełnia inny cel dzięki unikalnemu zestawowi funkcji.
Oprócz głowy i ogona istnieje mnóstwo innych poleceń do manipulacji tekstem i plikami dostępnych dla użytkowników Linuksa.