Kako koristiti naredbe 'cat' i 'tac' s primjerima u Linuxu


Ovaj članak je dio naše serije Linux trikova i savjeta, u ovom članku ćemo pokriti neke osnovne upotrebe naredbe cat (najčešće korištene naredbe u Linuxu) i tac ( obrnuto od cat komande – ispis datoteka obrnutim redoslijedom) s nekim praktičnim primjerima.

Pročitajte također: 13 korisnih primjera naredbi 'cat' u Linuxu

Osnovna upotreba Cat komande u Linuxu

Naredba Cat, akronim za Concatenate, jedna je od najčešće korištenih naredbi u *nix sistemima. Najosnovnija upotreba naredbe je čitanje datoteka i njihovo prikazivanje u stdout, što znači da se prikazuje sadržaj datoteka na vašem terminalu.

cat file.txt

Druga upotreba naredbe cat je čitanje ili kombinovanje više datoteka zajedno i slanje izlaza na monitor kao što je ilustrovano u primjerima ispod.

cat file1.txt file2.txt file3.txt

Naredba se također može koristiti za spajanje (pridruživanje) više datoteka u jednu datoteku koristeći “> ” Linux operator preusmjeravanja.

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

Korištenjem preusmjerivača dodavanja možete dodati sadržaj nove datoteke na dno file-all.txt sa sljedećom sintaksom.

cat file4.txt >> file-all.txt

Komanda cat se može koristiti za kopiranje sadržaja datoteke u novu datoteku. Novi fajl se može proizvoljno preimenovati. Na primjer, kopirajte datoteku sa trenutne lokacije u /tmp/ direktorij.

cat file1.txt > /tmp/file1.txt 

Kopirajte datoteku sa trenutne lokacije u /tmp/ direktorij i promijenite joj ime.

cat file1.txt > /tmp/newfile.cfg

Manja upotreba naredbe cat je kreiranje nove datoteke sa donjom sintaksom. Kada završite sa uređivanjem fajla pritisnite CTRL+D da sačuvate i izađete iz nove datoteke.

cat > new_file.txt

Da biste numerirali sve izlazne linije datoteke, uključujući prazne linije, koristite prekidač -n.

cat -n file-all.txt

Za prikaz samo broja svake neprazne linije koristite prekidač -b.

cat -b file-all.txt

Želite li saznati više o Linux cat komandi? zatim pročitajte naš članak o 13 korisnih primjera naredbi 'mačka' u Linuxu.

Naučite kako koristiti Tac naredbu u Linuxu

S druge strane, manje poznata i manje korištena komanda u *nix sistemima je naredba tac. Tac je praktički obrnuta verzija naredbe cat (takođe napisana unatrag) koja ispisuje svaki red datoteke počevši od donjeg reda i završavajući u gornjem redu do standarda vaše mašine izlaz.

tac file-all.txt

Jedna od najvažnijih opcija naredbe predstavlja prekidač -s, koji odvaja sadržaj datoteke na osnovu niza ili ključne riječi od datoteke.

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

Sljedeća, najvažnija upotreba naredbe tac je da može pružiti veliku pomoć za otklanjanje grešaka u log datotekama, obrćući hronološki redoslijed sadržaja dnevnika.

tac /var/log/auth.log

Or to display the last lines

tail /var/log/auth.log | tac
Sample Output
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
...

Isto kao naredba cat, tac radi odličan posao u manipuliranju tekstualnim datotekama, ali ga treba izbjegavati u drugim vrstama datoteka, posebno u binarnim datotekama ili na datotekama gdje je prvi red označava program koji će ga pokrenuti.