Vyhledávání na webu

Jak používat příkazy 'cat' a 'tac' s příklady v Linuxu


Tento článek je součástí naší série triků a tipů pro Linux, v tomto článku pokryjeme základní použití příkazu cat (nejčastěji používaný příkaz v Linuxu) a tac ( reverse of cat – tisk souborů v opačném pořadí) s několika praktickými příklady.

Čtěte také: 13 užitečných příkladů příkazů „cat“ v Linuxu

Základní použití Cat Command v Linuxu

Příkaz Cat, zkratka pro Concatenate, je jedním z nejpoužívanějších příkazů v systémech *nix. Nejzákladnějším použitím příkazu je čtení souborů a jejich zobrazení na stdout, což znamená zobrazení obsahu souborů na vašem terminálu.

cat file.txt

Dalším použitím příkazu cat je čtení nebo kombinování více souborů dohromady a odeslání výstupu na monitor, jak je znázorněno v níže uvedených příkladech.

cat file1.txt file2.txt file3.txt

Příkaz lze také použít ke zřetězení (spojení) více souborů do jednoho souboru pomocí operátoru přesměrování Linuxu “> ”.

cat file1.txt file2.txt file3.txt > file-all.txt

Pomocí přesměrovače append můžete přidat obsah nového souboru na konec file-all.txt s následující syntaxí.

cat file4.txt >> file-all.txt

Příkaz cat lze použít ke zkopírování obsahu souboru do nového souboru. Nový soubor lze libovolně přejmenovat. Například zkopírujte soubor z aktuálního umístění do adresáře /tmp/.

cat file1.txt > /tmp/file1.txt 

Zkopírujte soubor z aktuálního umístění do adresáře /tmp/ a změňte jeho název.

cat file1.txt > /tmp/newfile.cfg

Menším využitím příkazu cat je vytvoření nového souboru s níže uvedenou syntaxí. Po dokončení úprav souboru stiskněte CTRL+D pro uložení a ukončení nového souboru.

cat > new_file.txt

Chcete-li očíslovat všechny výstupní řádky souboru, včetně prázdných řádků, použijte přepínač -n.

cat -n file-all.txt

Chcete-li zobrazit pouze číslo každého neprázdného řádku, použijte přepínač -b.

cat -b file-all.txt

Chcete se dozvědět více o Linuxovém příkazu cat? pak si přečtěte náš článek o 13 užitečných příkladech příkazů „cat“ v Linuxu.

Naučte se používat Tac Command v Linuxu

Na druhou stranu méně známým a méně používaným příkazem v systémech *nix je příkaz tac. Tac je prakticky obrácená verze příkazu cat (také psáno pozpátku), který vytiskne každý řádek souboru počínaje spodním řádkem a končí na horním řádku podle standardu vašeho počítače. výstup.

tac file-all.txt

Jednou z nejdůležitějších možností příkazu je přepínač -s, který odděluje obsah souboru na základě řetězce nebo klíčového slova od souboru.

tac file-all.txt --separator "two"

Další, nejdůležitější použití příkazu tac je to, že může poskytnout velkou pomoc při ladění souborů protokolu a obrátit chronologické pořadí obsahu protokolu.

tac /var/log/auth.log

Or to display the last lines

tail /var/log/auth.log | tac
Ukázkový výstup
tecmint@tecmint ~ $ tac /var/log/auth.log
pr  6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session closed for user root
Apr  6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:00:01 tecmint CRON[17434]: pam_unix(cron:session): session closed for user root
....
tecmint@tecmint ~ $ tail /var/log/auth.log | tac
Apr  6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session closed for user root
Apr  6 16:09:01 tecmint CRON[17714]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 tecmint CRON[17583]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 tecmint CRON[17582]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:00:01 tecmint CRON[17434]: pam_unix(cron:session): session closed for user root
Apr  6 16:00:01 tecmint CRON[17434]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 15:55:02 tecmint CRON[17194]: pam_unix(cron:session): session closed for user root
Apr  6 15:55:01 tecmint CRON[17195]: pam_unix(cron:session): session closed for user root
...

Stejně jako příkaz cat, tac odvádí vynikající práci při manipulaci s textovými soubory, ale je třeba se mu vyhnout u jiných typů souborů, zejména u binárních souborů nebo u souborů, kde je první řádek označuje program, který jej spustí.