W Linuksie są dwa bardzo przydatne polecenia, które pozwalają zobaczyć część pliku. Pierwsza nazywa się head i domyślnie pokazuje pierwsze 10 wierszy pliku. Drugie to polecenie tail, które domyślnie umożliwia wyświetlenie ostatnich 10 wierszy w pliku.
Dlaczego miałbyś chcieć użyć któregokolwiek z tych poleceń? Dlaczego po prostu nie użyć polecenia cat, aby wyświetlić cały plik lub użyć edytora, takiego jak nano?
Wyobraź sobie, że czytany plik ma 300,000 XNUMX wierszy. Wyobraź sobie również, że plik zajmuje dużo miejsca na dysku.
Typowym zastosowaniem polecenia head jest upewnienie się, że plik, który chcesz wyświetlić, jest rzeczywiście prawidłowym plikiem. Zwykle można stwierdzić, czy patrzysz na właściwy plik, po prostu patrząc na kilka pierwszych wierszy. Następnie możesz użyć edytora, takiego jak nano, do edycji pliku.
Polecenie tail jest przydatne do przeglądania ostatnich kilku wierszy plików i jest bardzo dobre, gdy chcesz zobaczyć, co się dzieje w pliku dziennika przechowywanym w folderze / var / log.
Przykład użycia
Polecenie tail domyślnie wyświetla ostatnie 10 linii pliku.
Składnia polecenia tail jest następująca:
ogon
Na przykład, aby wyświetlić dziennik rozruchu systemu, możesz użyć następującego polecenia:
ogon sudo
Wynik byłby podobny do tego:
Jak określić liczbę wyświetlanych wierszy
Określ liczbę wierszy, które chcesz zobaczyć, używając następującego polecenia:
sudo tail -n20
Powyższy przykład pokazałby ostatnie 20 wierszy pliku.
Alternatywnie możesz użyć -n przełącznik, aby również określić punkt początkowy w pliku. Być może wiesz, że pierwsze 30 wierszy w pliku to komentarze i chcesz po prostu zobaczyć dane w pliku. W takim przypadku użyjesz następującego polecenia:
sudo tail -n + 20
Polecenie tail jest często używane razem z jeszcze polecenie, aby można było odczytać plik na stronie na raz.
Na przykład:
sudo tail -n + 20 <fi
Powyższe polecenie wysyła ostatnie 20 wierszy z nazwy pliku i przekazuje je jako dane wejściowe do polecenia more.
Możesz także użyć polecenia tail, aby wyświetlić określoną liczbę bajtów zamiast linii:
sudo tail -c20
Użyj tego samego przełącznika, aby rozpocząć wyświetlanie od określonej liczby bajtów w następujący sposób:
ogon sudo -c + 20
Jak monitorować plik dziennika
Zauważysz, że uwzględniliśmy sudo w większości poleceń. To włączenie jest konieczne tylko wtedy, gdy jako zwykły użytkownik nie masz uprawnień do przeglądania pliku i potrzebujesz podwyższonych uprawnień.
Wiele skryptów i programów nie wyświetla się na ekranie, ale jest dołączanych do pliku dziennika podczas ich działania. Użyj następującego polecenia tail, aby sprawdzić, jak dziennik zmienia się co kilka sekund:
sudo tail -F -s20
Możesz także użyć tail, aby kontynuować monitorowanie dziennika, aż proces zakończy się w następujący sposób:
sudo tail -F --pid = 1234
Aby znaleźć identyfikator procesu dla procesu, możesz użyć następującego polecenia:
ps -ef | grep & l
Na przykład wyobraź sobie, że edytujesz plik za pomocą nano. Możesz znaleźć identyfikator procesu dla nano za pomocą następującego polecenia:
p
Dane wyjściowe polecenia podają identyfikator procesu. Wyobraź sobie, że identyfikator procesu to 1234. Możesz teraz uruchomić tail dla pliku edytowanego przez nano, używając następującego polecenia:
sudo tail -F --pid = 1234
Za każdym razem, gdy plik jest zapisywany w nano, polecenie tail pobierze nowe linie na dole. Polecenie zatrzymuje się tylko wtedy, gdy edytor nano jest zamknięty.
Jak ponowić polecenie tail
Jeśli pojawi się błąd podczas próby uruchomienia polecenia tail, ponieważ z jakiegoś powodu jest ono niedostępne, możesz użyć rozszerzenia spróbować ponownie aby kontynuować ponawianie, aż plik będzie dostępny.
ogon sudo --retry -F
To naprawdę działa tylko w połączeniu z -F przełącznik, ponieważ musisz podążać za plikiem, aby spróbować ponownie.
Podsumowanie
Aby dowiedzieć się więcej o poleceniu tail, możesz użyć następującego polecenia: