Hvordan bruke "cat" og "tac" kommandoer med eksempler i Linux
Denne artikkelen er en del av vår Linux-triks- og tips-serie, i denne artikkelen vil vi dekke noen grunnleggende bruk av kommandoen cat (mest brukte kommando i Linux) og tac ( omvendt av cat-kommando – skriv ut filer i omvendt rekkefølge) med noen praktiske eksempler.
Les også: 13 nyttige 'cat'-kommandoer i Linux
Grunnleggende bruk av Cat Command i Linux
Kommandoen Cat, akronym for Concatenate, er en av de mest brukte kommandoene i *nix-systemer. Den mest grunnleggende bruken av kommandoen er å lese filer og vise dem til stdout, som betyr å vise innholdet i filene på terminalen din.
cat file.txt
En annen bruk av kommandoen cat er å lese eller kombinere flere filer sammen og sende utdataene til en skjerm som illustrert i eksemplene nedenfor.
cat file1.txt file2.txt file3.txt
Kommandoen kan også brukes til å sette sammen (føye sammen) flere filer til én enkelt fil ved å bruke “> ”
Linux-omdirigeringsoperatøren.
cat file1.txt file2.txt file3.txt > file-all.txt
Ved å bruke tilføy-omadresseringen kan du legge til innholdet i en ny fil nederst i file-all.txt
med følgende syntaks.
cat file4.txt >> file-all.txt
Kommandoen cat kan brukes til å kopiere innholdet i filen til en ny fil. Den nye filen kan gis nytt navn til vilkårlig. Kopier for eksempel filen fra gjeldende plassering til katalogen /tmp/
.
cat file1.txt > /tmp/file1.txt
Kopier filen fra gjeldende plassering til katalogen /tmp/
og endre navnet.
cat file1.txt > /tmp/newfile.cfg
En mindre bruk av cat-kommandoen er å lage en ny fil med syntaksen nedenfor. Når du er ferdig med å redigere filen, trykk CTRL+D
for å lagre og avslutte den nye filen.
cat > new_file.txt
For å nummerere alle utdatalinjer i en fil, inkludert tomme linjer, bruk -n
-bryteren.
cat -n file-all.txt
For å vise bare nummeret på hver ikke-tom linje, bruk -b
bryteren.
cat -b file-all.txt
Vil du lære mer om Linux cat-kommando? les deretter artikkelen vår om 13 nyttige eksempler på "cat"-kommandoer i Linux.
Lær hvordan du bruker Tac Command i Linux
På den annen side er en mindre kjent og mindre brukt kommando i *nix-systemer tac
-kommandoen. Tac er praktisk talt den omvendte versjonen av kommandoen cat
(også stavet baklengs) som skriver ut hver linje i en fil fra den nederste linjen og avslutter på den øverste linjen til maskinstandarden din produksjon.
tac file-all.txt
Et av de viktigste alternativene for kommandoen er representert av -s
-bryteren, som skiller innholdet i filen basert på en streng eller et nøkkelord fra filen.
tac file-all.txt --separator "two"
Deretter er den viktigste bruken av tac-kommandoen at den kan gi stor hjelp for å feilsøke loggfiler, og snu den kronologiske rekkefølgen av logginnhold.
tac /var/log/auth.log
Or to display the last lines
tail /var/log/auth.log | tac
Eksempelutgang
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
...
På samme måte som cat
-kommandoen, gjør tac
en utmerket jobb med å manipulere tekstfiler, men det bør unngås i andre typer filer, spesielt binære filer eller på filer med første linje angir programmet som skal kjøre det.