Hvordan bruke Linux Cat-kommandoer (med eksempler)

I alle operativsystemer jobber brukere med filer og utfører operasjoner som å lage, slette og lese fra filer. I Linux er ikke situasjonen annerledes.

Mens du kan jobbe med filer ved å bruke det grafiske brukergrensesnittet i et Linux-operativsystem, foretrekker de fleste Linux-brukere å samhandle med operativsystemet fra terminalen.

Som sådan har Linux kommandoer som lar brukere jobbe med filer rett fra terminalen. En slik kommando er kattekommandoen.

Fra Linux-man-sidene brukes cat-kommandoen til å sette sammen filer og skrive ut filinnhold til standardutgangen. Linux-man-sider er dokumentasjonsfiler som er ment å hjelpe brukere med å forstå Linux-kommandoer og hvordan de brukes.

For å få tilgang til man-siden for en Linux-kommando, skriver du bare inn mann . For å se man-sidene for cat-kommandoen for eksempel, kjør følgende kommando i terminalen:

man cat

Hva kattekommandoen brukes til

Som nevnt tidligere kan cat-kommandoen brukes til å skrive ut innholdet i en fil til skjermen. Dens andre funksjonalitet er å sette sammen filer og sende ut innholdet. Dette betyr at hvis du gir cat-kommandoen med flere filer, vil den sette sammen innholdet og sende innholdet til skjermen.

For å si det enkelt, vil cat-kommandoen sette sammen innholdet i flere filer og sende dem ut på skjermen. I en slik operasjon vil imidlertid ikke cat-kommandoen opprette noen ny fil, og de originale filene som brukes i cat-kommandoen vil forbli uendret.

Kattkommandoen brukes også i omdirigering. Omdirigering refererer til hvordan brukere kan endre kilden til standardinndata og destinasjonen for standardutdata og standardfeil. Standard input, standard output og standard error er standardstrømmene som brukes for kommunikasjon i Linux.

Som standard er standardinngangen tastaturet, og standardutdata og standardfeil vises på skjermen som standard.

Omdirigering betyr derfor i stedet for å få standardinndata fra et tastatur som er standard, kan vi omdirigere og få input fra en fil eller en annen kilde.

Når det gjelder standardutgangen og standardfeilen, som vises på skjermen som standard, gjennom omdirigering, kan du få disse utgangene skrevet til en fil.

cat Kommandosyntaks

Syntaksen for cat-kommandoen er som følger:

cat [OPTION]... [FILE]...

På man-sider for Linux er alt som er oppført innenfor hakeparenteser valgfritt. Derfor, i syntaksen ovenfor, er det ikke et must for cat-kommandoen å ha et OPTION eller til og med en fil som argument. Den kan ha en av de to, begge eller ingen i det hele tatt.

  Hvordan starte tjenester automatisk ved oppstart i Linux?

Ellipsis(…) brukes for å vise at en eller flere av de foregående operandene eller argumentene er tillatt. Derfor kan cat-kommandoen ta ett eller flere OPTIONS eller FILER.

FILE representerer filer vi vil at cat-kommandoen skal sette sammen og vise. OPTION representerer flagg som kan legges til kattekommandoen for å endre oppførselen. Alternativer som kan brukes med cat-kommandoen er vist nedenfor:

Cat-kommandoen fungerer ved å ta filen(e) som er sendt til den og sende ut innholdet til standardutgangen, som er terminalvinduet. I tilfelle det er sendt flere filer til den, blir innholdet sammenkoblet og deretter vist i terminalvinduet.

Kattekommandoen vil også oppføre seg annerledes avhengig av flagget som sendes til den. Hvis du for eksempel sender flagget -n, vil cat-kommandonummeret bli alle utgangslinjene. Avhengig av hvordan du vil at den skal oppføre seg, kan du sende et hvilket som helst av flaggene som kan brukes med kattekommandoen.

Slik bruker du kattekommandoen

For å bruke cat-kommandoen, skriv bare inn kommandoen og navnet på filen(e) du vil sette sammen og lese for eksempel. For å skrive ut innholdet i en fil kalt rainbow.txt, kjør følgende kommando.

cat rainbow.txt

Du kan også legge til et flagg for å endre oppførselen til kattekommandoen. For eksempel kan du nummerere alle utdatalinjene ved å bruke flagget -n. I vårt eksempel ovenfor kan vi nummerere alle utdatalinjene i rainbow.txt ved å utføre følgende linje:

cat -n rainbow.txt

Utgangene fra de to kommandoene er vist nedenfor:

For å kombinere flaggene eller alternativene som kan brukes med kattekommandoen, skriv dem enkelt etter hverandre, eller du kan skille mellom dem. Hver av de to fungerer. -E-flagget vist nedenfor brukes til å legge til et dollartegn($) på slutten av utgangslinjene.

Dette kan være nyttig når du viser valutaverdier. De ulike måtene du kan kombinere flere flagg med cat-kommandoen er vist nedenfor:

For å sette sammen og vise flere filer ved hjelp av cat-kommandoen, skriv ganske enkelt filnavnene etter hverandre, atskilt med mellomrom. For for eksempel å sette sammen to filer kalt rainbow.txt og primary.txt, kjør følgende linje:

cat rainbow.txt primary.txt

Utgangen av kommandoen er vist nedenfor

De to filene rainbow.txt og primary.txt forblir uendret etter denne operasjonen. Merk at rekkefølgen filene vises i i kommandoen bestemmer hvordan innholdet skal vises. Innholdet vises fra den første filen til den siste. Du kan også legge til flagg når du setter sammen og viser flere filer, som vist nedenfor:

  Hvordan installere Zettlr markdown-editoren på Linux

En siste ting å merke seg om cat-kommandoen er at i tilfelle ingen fil er gitt til kommandoen eller en bindestrek(-) er gitt, leser cat-kommandoen fra standardinndata i stedet for en fil. Standardinngangen er tastaturet.

Derfor vil kattekommandoen ganske enkelt vise det en bruker skriver inn via tastaturet. For å se dette i praksis, kjør kommandoen:

cat

Kommandoen tar deg til en blinkende markør som venter på inndata fra tastaturet. Skriv inn en tekst, og trykk deretter på Enter. Uansett hva du skriver vil bli sendt til standardutgangen som vist nedenfor:

Trykk CTRL + C for å avslutte og slutte å sende inn input til cat-kommandoen.

Vi kan også bruke cat-kommandoen til å sette sammen og sende ut innholdet til alle filer av en bestemt type i den aktive katalogen. Dette gjøres med en stjerne

cat *.txt

jokertegn. For å få ut alt innholdet i tekstfilene (.txt) i en bestemt katalog, vil vi for eksempel kjøre koden nedenfor:

Utgangen av kommandoen er vist nedenfor:

Eksempler på cat Command

Bortsett fra standardbrukene til cat-kommandoen, kan funksjonaliteten til cat-kommandoen utvides gjennom omdirigering. Som nevnt tidligere, sendes cat-kommandoen til terminalskjermen som standard.

Gjennom omdirigering kan vi imidlertid omdirigere utdataene til en annen fil i stedet for at utdataene vises på skjermen.

Utdataomdirigeringsoperatøren i Linux er > (større enn-symbolet, også kalt chevron).

cat rainbow.txt

For eksempel, hvis vi utfører linjen:

Innholdet i rainbow.txt sendes til skjermen.

cat colors.txt > rainbow.txt

Men hvis vi utfører

Innholdet i rainbow.txt vil ikke vises på skjermen. I stedet vil de bli omdirigert og skrevet til colors.txt-filen. Dette kan være en utmerket måte å kopiere innhold fra en fil til en annen.

Standardoppførselen til utdataomdirigering i Linux er at den overskriver alt innholdet i filen vi omdirigerer til. For eksempel, i eksempelet ovenfor, vil alt innholdet i rainbow.txt bli overskrevet av innholdet fra colors.txt. For å beholde det eksisterende innholdet i filen du omdirigerer til, og legge til det nye innholdet til den, bruk >> når du omdirigerer.

Legg merke til nedenfor at colors.txt nå har fargene som ble funnet i rainbows.txt etter å omdirigere utdataene fra rainbows.txt til colors.txt ved hjelp av >>

For å ta funksjonaliteten til cat-kommandoen enda lenger, kan vi kombinere omdirigering og cat-kommandoens standardoppførsel for å lese fra standardinndata når ingen fil er gitt for å bruke cat-kommandoen til å lage en fil og skrive til den.

cat > dark.txt

Hvis du kjører koden nedenfor

  Hvordan bruke på og batch på Linux for å planlegge kommandoer

Vi vil omdirigere til dark.txt. Siden vi ikke ga en fil hvis innhold vil bli omdirigert til dark.txt, vil cat-kommandoen forvente input fra tastaturet.

Skriv derfor inn hvilken som helst tekst du vil lagre i dark.txt, trykk Enter for å gå til neste linje, og trykk CTRL + D når du er ferdig for å lagre det du har skrevet til filen du omdirigerer til.

Siden vi omdirigerer til en fil som ikke eksisterer, vil dark.txt automatisk bli opprettet, og det vi skrev gjennom tastaturet vil bli lagret i filen. På denne måten kan vi bruke cat-kommandoen til å lage filer og skrive til dem når de opprettes.

Utgangen av operasjonen er vist nedenfor:

cat >> dark.txt

Katten kan også brukes til å legge til tekst på slutten av en fil. Ved å bruke dark.txt kan vi legge til flere farger ved å utføre:

Du kan deretter legge til tilleggsinformasjon ved å skrive gjennom tastaturet og deretter trykke CTRL + D for å lagre og legge til det nye innholdet i dark.txt som vist nedenfor:

cat file1 file2 file3 > file4

Katt-kommandoen kan også brukes til å sette sammen flere filer til én fil. Syntaksen for en slik operasjon er vist nedenfor

Innholdet i fil1, fil2 og fil3 vil bli koblet sammen og skrevet til fil4. Du kan også bruke >> i tilfelle du ikke vil overskrive innholdet i fil4. Hvis fil$ ikke eksisterer, vil den opprettes automatisk.

Et eksempel på dette er vist nedenfor:

cat colors.txt primary.txt > allColors.txt

For å skrive innholdet i colors.txt og primary.txt til allColors.txt, kjører vi

cat primary.txt >> colors.txt

Du kan også legge til innholdet fra én eller flere filer til en annen fil ved å bruke cat-kommandoen. Dette gjøres ved å bruke >> når du omdirigerer utdata. Dette unngår å overskrive det som allerede er lagret i den andre filen. For for eksempel å legge til innholdet i primary.txt til colors.txt, kjør koden nedenfor:

Resultatet av denne operasjonen er vist nedenfor:

Konklusjon

Cat-kommandoen er en veldig nyttig Linux-kommando som lar brukere sette sammen og vise innholdet i filer. Kommandoen har flere flagg som kan legges til for å endre hvordan den oppfører seg.

Gjennom omdirigering kan funksjonaliteten til cat-kommandoen økes kraftig, slik at brukere kan opprette og kopiere filer, sette sammen flere filer til én fil og legge til en eksisterende fil. For å lære mer om kattekommandoen, besøk man-sidene.

Du kan også utforske noen Linux-kommandoer for systemadministratorer.