Kaip naudoti „cat“ ir „tac“ komandas su pavyzdžiais „Linux“.


Šis straipsnis yra mūsų „Linux“ gudrybių ir patarimų serijos dalis. Šiame straipsnyje apžvelgsime keletą pagrindinių komandų cat (dažniausiai naudojama komanda Linux sistemoje) ir tac ( atvirkštinė komanda cat – spausdinkite failus atvirkštine tvarka) su keletu praktinių pavyzdžių.

Taip pat skaitykite: 13 naudingų „katės“ komandų pavyzdžių sistemoje „Linux“

Pagrindinis „Cat Command“ naudojimas sistemoje „Linux“.

Komanda Cat, akronimas Sujungti, yra viena iš dažniausiai naudojamų komandų *nix sistemose. Paprasčiausias komandos naudojimas yra nuskaityti failus ir rodyti juos stdout, ty rodyti failų turinį terminale.

cat file.txt

Kitas komandos cat naudojimas yra kelių failų skaitymas arba derinimas ir išvesties siuntimas į monitorių, kaip parodyta toliau pateiktuose pavyzdžiuose.

cat file1.txt file2.txt file3.txt

Komanda taip pat gali būti naudojama norint sujungti (sujungti) kelis failus į vieną failą, naudojant “> ” Linux peradresavimo operatorių.

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

Naudodami pridėjimo peradresavimo priemonę galite pridėti naujo failo turinį failas-visi.txt apačioje, naudodami tokią sintaksę.

cat file4.txt >> file-all.txt

Komanda katė gali būti naudojama failo turiniui nukopijuoti į naują failą. Naują failą galima pervadinti savavališkai. Pavyzdžiui, nukopijuokite failą iš dabartinės vietos į /tmp/ katalogą.

cat file1.txt > /tmp/file1.txt 

Nukopijuokite failą iš dabartinės vietos į /tmp/ katalogą ir pakeiskite jo pavadinimą.

cat file1.txt > /tmp/newfile.cfg

Rečiau naudojama komanda cat – sukurti naują failą su toliau nurodyta sintaksė. Baigę redaguoti failą paspauskite CTRL+D, kad išsaugotumėte ir išeitumėte iš naujo failo.

cat > new_file.txt

Norėdami sunumeruoti visas failo išvesties eilutes, įskaitant tuščias eilutes, naudokite jungiklį -n.

cat -n file-all.txt

Norėdami rodyti tik kiekvienos netuščios eilutės numerį, naudokite jungiklį -b.

cat -b file-all.txt

Norite sužinoti daugiau apie Linux cat komandą? tada perskaitykite mūsų straipsnį apie 13 naudingų „katės“ komandų pavyzdžių sistemoje „Linux“.

Sužinokite, kaip naudoti „Tac Command“ sistemoje „Linux“.

Kita vertus, mažiau žinoma ir mažiau naudojama komanda *nix sistemose yra komanda tac. Tac yra praktiškai atvirkštinė komandos cat versija (taip pat rašoma atgal), kuri spausdina kiekvieną failo eilutę, pradedant nuo apatinės ir baigiant viršutine iki jūsų įrenginio standarto. išvestis.

tac file-all.txt

Viena iš svarbiausių komandos parinkčių yra jungiklis -s, kuris pagal eilutę arba raktinį žodį atskiria failo turinį nuo failo.

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

Kitas, svarbiausias komandos tac panaudojimas yra tas, kad ji gali labai padėti derinant žurnalo failus, pakeičiant žurnalo turinio chronologinę tvarką.

tac /var/log/auth.log

Or to display the last lines

tail /var/log/auth.log | tac
Pavyzdžio išvestis
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
...

Kaip ir komanda cat, tac puikiai atlieka manipuliavimą tekstiniais failais, tačiau to reikėtų vengti naudojant kitų tipų failus, ypač dvejetainius failus arba failus, kurių pirmoji eilutė žymi programą, kuri ją paleis.