Ako zobraziť koniec súboru v systéme Linux s príkazom

Existujú dva veľmi užitočné príkazy v systéme Linux, ktoré umožňujú vidieť časť súboru. Prvý sa nazýva hlava a v predvolenom nastavení zobrazuje prvých 10 riadkov v súbore. Druhým je príkaz tail, ktorý v predvolenom nastavení umožňuje zobraziť posledných 10 riadkov v súbore.

Prečo by ste chceli použiť niektorý z týchto príkazov? Prečo nielen používať príkaz mačka na zobrazenie celého súboru alebo použiť editor, ako napríklad nano ?

Predstavte si, že súbor, ktorý čítate, má 300 000 riadkov.

Predstavte si tiež, že súbor spotrebuje veľa miesta na disku.

Bežným používaním príkazu head je uistiť sa, že súbor, ktorý chcete zobraziť, je skutočne správny súbor. Zvyčajne môžete zistiť, či sa pozeráte na správny súbor, len keď uvidíte prvých pár riadkov. Potom môžete zvoliť použitie editora, napríklad nano, na úpravu súboru.

Príkaz chvost je užitočný na zobrazenie posledných riadkov súborov a je veľmi dobrý, ak chcete vidieť, čo sa deje v súbore denníka, ktorý sa nachádza v priečinku / var / log .

Táto príručka vám ukáže, ako použiť príkaz tail, vrátane všetkých dostupných prepínačov.

Príklad používania príkazu chvosta

Ako sme už uviedli, príkaz chvostu predvolene zobrazuje posledných 10 riadkov súboru.

Syntax príkazu tail je nasledujúci:

tail

Ak napríklad chcete zobraziť protokol zavádzania systému, môžete použiť nasledujúci príkaz:

sudo tail /var/log/boot.log

Výstup by bol takýto:

* Začať aktivovať zostávajúce začiatočné šifrované blokovacie zariadenia [OK]
* Spustenie udev log a pravidlá aktualizácie [OK]
* Zastavenie uloženia udev log a aktualizácie pravidiel [OK]
* reč-dispečer zakázaný; upraviť / etc / default / speech-dispatcher
* Additions VirtualBox zakázané, nie vo virtuálnom počítači
zdravotne postihnutí; upraviť / etc / default / saned
* Obnovenie stavu resolvera ... [OK]
* Systém kompatibility zastavenia systému V [OK]
* Spustenie MDM Display Manager [OK]
* Zastavenie Odoslanie udalosti indikujúcej, že plymouth je v poriadku [OK]

Ako špecifikovať počet riadkov, ktoré sa majú zobraziť

Možno chcete vidieť viac ako posledných 10 riadkov súboru. Môžete určiť počet riadkov, ktoré chcete vidieť, pomocou nasledujúceho príkazu:

sudo tail -n20

Uvedený príklad zobrazuje posledných 20 riadkov súboru.

Alternatívne môžete použiť prepínač -n na určenie východiskového bodu v súbore. Možno viete, že prvých 30 riadkov v súbore sú komentáre a chcete vidieť iba dáta v rámci súboru. V tomto prípade by ste použili nasledujúci príkaz:

sudo tail -n + 20

Príkaz tail sa často používa spolu s príkazom viac, aby ste mohli súbor čítať naraz.

Napríklad:

sudo tail -n + 20 viac

Vyššie uvedený príkaz odošle posledných 20 riadkov z názvu súboru a potrubia ho ako vstup do príkazu viac:

Môžete tiež použiť príkaz tail na zobrazenie určitého počtu bajtov namiesto riadkov:

sudo tail-c20

Znova môžete použiť ten istý prepínač, aby ste začali zobrazovať z určitého bajtového čísla nasledovne:

sudo tail -c + 20

Ako sledovať súbor denníka

Existuje veľa skriptov a programov, ktoré sa nezobrazujú na obrazovke, ale pripojujú sa k súboru denníka, keď sú spustené.

V tomto prípade možno budete chcieť sledovať súbor protokolu pri jeho zmene.

Pomocou nasledujúceho príkazu chvosta môžete skontrolovať, ako sa denník mení každých toľko sekúnd:

sudo tail -F -s20

Pomocou chvosta môžete tiež pokračovať v sledovaní denníka, kým proces zomrie nasledovne:

sudo tail -F --pid = 1234

Ak chcete nájsť ID procesu pre proces, môžete použiť nasledujúci príkaz:

ps -ef | grep

Predstavte si napríklad, že upravujete súbor pomocou nano. ID procesu pre nano nájdete pomocou nasledujúceho príkazu:

ps -ef | grep nano

Výstup z príkazu vám poskytne ID procesu. Predstavte si, že ID procesu je 1234.

Teraz môžete spustiť chvost proti súboru, ktorý upravuje nano, pomocou nasledujúceho príkazu:

sudo tail -F --pid = 1234

Zakaždým, keď je súbor uložený v nano príkaze chvosta vyzdvihnú nové riadky v dolnej časti. Príkaz sa zastaví iba vtedy, keď je nano editor zatvorený.

Ako zopakovať zadné príkazy

Ak sa pri pokuse o spustenie príkazu chvostom zobrazí chyba, pretože z nejakého dôvodu nie je prístupná, môžete použiť parameter opakovania, aby ste opakovali, kým nie je k dispozícii súbor.

sudo tail - retry - F

Toto funguje iba v spojení s prepínačom -F, pretože musíte sledovať súbor, ktorý chcete opakovať.

zhrnutie

Táto príručka zobrazuje bežnejšie použitie príkazu chvosta.

Ak chcete zistiť viac informácií o príkaze tail, môžete použiť nasledujúci príkaz:

man tail

Všimnete si, že som zahrnul sudo do väčšiny príkazov. Toto je potrebné iba vtedy, keď nemáte oprávnenia ako bežný používateľ na prezeranie súboru a potrebujete zvýšené povolenia.