HEAD

ByAdmin

Dec 30, 2018

head kommandoen læser de første få linjer af enhver tekst, der er givet til den som input, og skriver dem til standard output (som som standard er skærmen).

head grundlæggende syntaks er:

   head [indstillinger] [fil (er)]

Firkantede parenteser angiver, at de vedlagte genstande er valgfrie. Som standard returnerer head de første ti linjer af hvert filnavn, der leveres til det.

For eksempel vil følgende vise de første ti linjer i filen hedder file.txt i den aktuelle mappe (det vil sige den mappe, hvor brugeren arbejder i øjeblikket):

 

$ head file.txt

Hvis der leveres mere end en inputfil, returnerer head de første ti linjer fra hver fil, går forud for hvert sæt linjer ved navn på filen og adskiller hvert sæt linjer med et lodret rum. Følgende er et eksempel på at bruge hoved med to inputfiler:

$ head file.txt file2.txt

Hvis det ønskes at få et antal andre linjer ud over standard ti, kan -n indstillingen anvendes efterfulgt af et helt tal, der angiver antallet af ønskede linjer. Eksempelvis kan ovenstående eksempel ændres for at vise de første 15 linjer fra hver fil:

$ head -n15 file.txt file2.txt

-n er en meget tolerant mulighed. For eksempel er det ikke nødvendigt for heltalet at følge det direkte uden mellemrum. Følgende kommando ville således give det samme resultat:

$ head -n 15 file.txt file2.txt

Faktisk behøver bogstavet n ikke engang at blive brugt. Bare bindestreg og heltal (uden mellemrum) er tilstrækkelige til at fortælle head, hvor mange linjer der skal returneres. Følgelig ville følgende frembringe det samme resultat som de ovennævnte kommandoer:

$ head -15 file.txt file2.txt

head kan også returnere et hvilket som helst ønsket antal byte (dvs. en sekvens på otte bits og normalt lang nok til at repræsentere et enkelt tegn) fra starten af ​​hver fil i stedet for et ønsket antal linjer. Dette opnås ved hjælp af -c-indstillingen efterfulgt af det ønskede antal byte. F.eks. Vil følgende vise de første fem byte af hver af de to filer, der leveres:

$ head-c 5 file.txt file2.txt

Når head tæller med byte, omfatter det også newline-tegnet, hvilket er et tegn, der ikke er trykt (dvs. usynligt), der er angivet ved en tilbagekobling og bogstavet n (det vil sige \ n). Hvis der for eksempel er tre nye, blanke linjer ved starten af ​​en fil, tælles de som tre tegn sammen med tryktegnene (dvs. tegn der er synlige på skærmen eller på papir).

Antallet af byte eller linjer kan følges af et multiplikator-suffiks. Det vil sige at tilføje bogstavet b direkte efter antallet af byte multiplicerer det med 512, k multiplicerer det med 1024 og m multiplicerer det med 1048576. Følgelig vil følgende kommando vise de første fem kilobytes af filen file.txt:

$ head-c5k file.txt

Optionen -c er mindre tolerant end -n indstillingen. Det vil sige, der er ikke noget standard antal byte, og derfor skal et helt tal leveres. Også bogstavet c kan ikke udelades, som kan bogstavet n, fordi i så tilfælde ville hovedet fortolke bindestreg og heltalskombinationen som -n-indstillingen. Således vil følgende eksempelvis producere en fejlmeddelelse noget som head: file.txt: ugyldigt antal byte:

$ head-c file.txt

Hvis head bruges uden valgmuligheder eller argumenter (dvs. filnavne), afventer det input fra tastaturet og gentages successivt (dvs. hver linje vises to gange) på skærmen skæres hver af de første ti linjer på tastaturet . Hvis det ønskes at gentage et antal andre linjer end standard ti, vil alternativet -n blive anvendt efterfulgt af heltalet, der repræsenterer dette antal linjer (selvom det igen ikke er nødvendigt at medtage bogstavet n), f.eks. ,

$ head -n3

Som det er tilfældet med andre kommandolinje programmer (dvs. all-text-mode) -programmer i Linux og andre Unix-lignende operativsystemer, kan output fra head omdirigeres fra skærm til en fil eller printer ved hjælp af output-omdirigeringsoperatøren (som er repræsenteret ved en >). For eksempel vil følgende kopiere de første 12 linjer i filen file.txt til filen December:

$ head -12 file.txt > december

Hvis filen, der hedder december, endnu ikke eksisterede, ville omdirigerings operatøren oprette den; hvis det allerede eksisterede, ville omdirigerings operatøren overskrive det. For at undgå at slette data på en eksisterende fil, kan append-operatøren (som er repræsenteret af to på hinanden følgende højre-vinklede vinkelbeslag) bruges til at tilføje output fra hoved til slutning af en fil med det pågældende navn, hvis det allerede eksisterede (eller på anden måde oprette en ny fil med det navn), dvs.

 

$ head 12-12 file.txt >> december

Udgangen fra andre kommandoer kan sendes via et rør (repræsenteret ved den lodrette stregkarakter) til head for at bruge som input. Eksempelvis sender følgende output fra kommandoen ls (som som standard lister navne på filer og mapper i den aktuelle mappe) til hovedet, som igen viser de første ti linjer af

 

 

 

By Admin

Author: Jeg er en professionel system administrator og grundlægger af linuxboxen.dk Jeg er en ivrig Linux-elsker og open source-entusiast. Jeg bruger Ubuntu og tror på at dele viden. Bortset fra Linux, elsker musik og dyr. Jeg er en stor fan af Dire straits.