Skip to content

Jak zobrazit konec souboru v systému Linux pomocí příkazu ‚Tail‘

12 de Září de 2021
linux 151619 5bf105a646e0fb005117ba99

V Linuxu existují dva velmi užitečné příkazy, které vám umožní vidět část souboru. První se nazývá hlava a ve výchozím nastavení zobrazuje prvních 10 řádků v souboru. Druhým je ocas příkaz, který ve výchozím nastavení umožňuje zobrazit posledních 10 řádků v souboru. Proč byste chtěli použít některý z těchto příkazů? Proč nepoužijete příkaz cat k zobrazení celého souboru nebo použijete editor, jako je nano? Představte si, že soubor, který čtete, má 300 000 řádků. Představte si také, že soubor zabírá spoustu místa na disku. Běžné použití příkazu head je zajistit, aby soubor, který chcete zobrazit, byl skutečně správný. Obvykle můžete zjistit, zda se díváte na správný soubor, podle prvních několika řádků. Poté se můžete rozhodnout použít editor, například nano, k úpravě souboru. Příkaz tail je užitečný pro prohlížení několika posledních řádků souborů a je velmi dobrý, když chcete vidět, co se děje v souboru protokolu uloženém ve složce /var /log.

Příklad použití

The ocas příkaz ve výchozím nastavení zobrazuje posledních 10 řádků souboru. Syntaxe příkazu tail je následující: tail

type = „code“> Chcete -li například zobrazit spouštěcí protokol pro váš systém, můžete použít následující příkaz: sudo tail /var/log/boot.log

type = „code“> Výstup by byl něco takového:

Jak určit počet řádků, které se mají zobrazit

Pomocí následujícího příkazu zadejte počet řádků, které chcete vidět: sudo tail -n20

type = „code“> Výše ​​uvedený příklad by ukázal posledních 20 řádků souboru.

Specifická délka ocasu Linuxu

Případně můžete použít -n přepnout a určit také počáteční bod v souboru. Možná víte, že prvních 30 řádků v souboru jsou komentáře a chcete pouze zobrazit data v souboru. V tomto případě byste použili následující příkaz: sudo tail -n+20

zadejte = „kód“>

Počáteční bod ocasu Linuxu

Příkaz tail se často používá vedle více příkaz, abyste mohli přečíst soubor na stránce najednou. Například: sudo tail -n+20 | více

type = „code“> Výše ​​uvedený příkaz odešle posledních 20 řádků z názvu souboru a vloží jej jako vstup do příkazu more. Příkaz tail můžete také použít k zobrazení určitého počtu bajtů místo řádků: sudo tail -c20

zadejte = „kód“>

Bajty ocasu Linuxu

Stejným přepínačem začněte zobrazovat od určitého čísla bytu následovně: sudo tail -c+20

zadejte = „kód“>

Jak sledovat soubor protokolu

Všimnete si, že jsme zahrnuli sudo do většiny příkazů. Toto zahrnutí je nutné pouze tam, kde jako běžný uživatel nemáte oprávnění k prohlížení souboru a potřebujete zvýšená oprávnění. Mnoho skriptů a programů se nezobrazuje na obrazovce, ale připojuje se ke spuštěnému souboru protokolu. Použijte následující ocas příkaz ke kontrole toho, jak se protokol každých tolik sekund mění: sudo tail -F -s20

type = „code“> Můžete také použít tail, abyste mohli pokračovat v monitorování protokolu, dokud proces nezemře následovně: sudo tail -F –pid = 1234

type = „code“> Chcete -li najít ID procesu pro proces, můžete použít následující příkaz: ps -ef | grep

type = „code“> Představte si například, že upravujete soubor pomocí nano. ID procesu pro nano najdete pomocí následujícího příkazu: ps -ef | grep nano

type = „code“> Výstup z příkazu vám poskytne ID procesu. Představte si ID procesu je 1234. Nyní můžete spustit tail proti souboru, který upravuje nano, pomocí následujícího příkazu: sudo tail -F –pid = 1234

type = „code“> Pokaždé, když je soubor uložen v nano, příkaz tail zachytí nové řádky ve spodní části. Příkaz se zastaví, pouze když je editor nano zavřený.

Jak opakovat příkaz Tail

Pokud se vám při pokusu o spuštění příkazu tail zobrazí chyba, protože je z nějakého důvodu nepřístupná, můžete použít zkuste to znovu parametr opakovat, dokud není soubor k dispozici. sudo tail -zkuste -F

type = „code“> Toto funguje opravdu jen ve spojení s -F přepněte, protože musíte postupovat podle souboru, který chcete opakovat.

souhrn

Chcete -li zjistit více informací o příkazu tail, můžete použít následující příkaz: man tail

zadejte = „kód“>