Weboldal keresés

A „cat” és „tac” parancsok használata példákkal Linuxban


Ez a cikk a Linux trükkök és tippek sorozatának része, ebben a cikkben a cat (Linuxban a leggyakrabban használt parancs) és a tac ( macska parancs fordítottja – fájlok nyomtatása fordított sorrendben) néhány gyakorlati példával.

Olvassa el még: 13 hasznos „macska” parancspélda Linuxban

A Cat Command alapvető használata Linuxban

A Cat parancs, az Concatenate rövidítése, az egyik leggyakrabban használt parancs a *nix rendszerekben. A parancs legalapvetőbb használata a fájlok beolvasása és megjelenítése az stdoutba, ami azt jelenti, hogy a terminálon lévő fájlok tartalmát jeleníti meg.

cat file.txt

A cat parancs egy másik felhasználási módja több fájl összeolvasása vagy kombinálása, és a kimenet elküldése egy monitorra az alábbi példák szerint.

cat file1.txt file2.txt file3.txt

A parancs arra is használható, hogy több fájlt egyetlen fájlba fűzzen (összekapcsoljon) a “> ” Linux átirányítási operátor használatával.

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

A hozzáfűzés átirányító használatával egy új fájl tartalmát a következő szintaxissal adhatja hozzá a file-all.txt aljához.

cat file4.txt >> file-all.txt

A cat paranccsal átmásolhatja a fájl tartalmát egy új fájlba. Az új fájl tetszőlegesen átnevezhető. Például másolja a fájlt az aktuális helyről a /tmp/ könyvtárba.

cat file1.txt > /tmp/file1.txt 

Másolja a fájlt az aktuális helyről a /tmp/ könyvtárba, és változtassa meg a nevét.

cat file1.txt > /tmp/newfile.cfg

A cat parancs kevésbé használható, ha új fájlt hoz létre az alábbi szintaxissal. Ha végzett a fájl szerkesztésével, nyomja meg a CTRL+D billentyűt a mentéshez és az új fájlból való kilépéshez.

cat > new_file.txt

Egy fájl összes kimeneti sorának számozásához használja a -n kapcsolót, beleértve az üres sorokat is.

cat -n file-all.txt

Az egyes nem üres sorok számának megjelenítéséhez használja a -b kapcsolót.

cat -b file-all.txt

Szeretne többet megtudni a Linux cat parancsról? majd olvassa el cikkünket a 13 hasznos „macska” parancsról Linuxban.

Tanulja meg a Tac Command használatát Linuxon

Másrészt a *nix rendszerekben egy kevésbé ismert és kevésbé használt parancs a tac parancs. A Tac gyakorlatilag a cat parancs fordított változata (visszafelé is írva), amely a fájl minden sorát az alsó sortól kezdve a felső sorig nyomtatja ki a gép szabványának megfelelően. Kimenet.

tac file-all.txt

A parancs egyik legfontosabb opcióját a -s kapcsoló jelenti, amely karakterlánc vagy kulcsszó alapján választja el a fájl tartalmát a fájltól.

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

Következő, a tac parancs legfontosabb felhasználási módja, hogy nagy segítséget nyújthat a naplófájlok hibakeresésében, megfordítva a naplótartalom időrendi sorrendjét.

tac /var/log/auth.log

Or to display the last lines

tail /var/log/auth.log | tac
Minta kimenet
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
...

Ugyanúgy, mint a cat parancs, a tac kiváló munkát végez a szöveges fájlok kezelésében, de ezt kerülni kell más típusú fájloknál, különösen bináris fájloknál vagy olyan fájloknál, ahol az első sor azt a programot jelöli, amelyik futtatni fogja.