Hvordan se slutten av en fil i Linux med 'Tail'-kommandoen

Det er to veldig nyttige kommandoer i Linux som lar deg se deler av en fil. Den første heter hode og som standard viser den deg de første 10 linjene i en fil. Den andre er hale kommando som som standard lar deg se de siste 10 linjene i en fil.

Hvorfor vil du bruke en av disse kommandoene? Hvorfor ikke bare bruke kattekommando for å se hele filen eller bruk et redigeringsprogram som f.eks nano?

Tenk deg at filen du leser har 300 000 linjer. Tenk deg også at filen bruker mye diskplass.

En vanlig bruk av head-kommandoen er å forsikre deg om at filen du vil se, faktisk er den riktige filen. Du kan vanligvis se om du ser på den riktige filen bare ved å se de første linjene. Du kan deretter velge å bruke en editor som nano for å redigere filen.

Halekommandoen er nyttig for å vise de siste linjene med filer og er veldig bra når du vil se hva som skjer i en loggfil i /var/log-mappen.

Eksempel på bruk

De hale kommandoen viser som standard de siste 10 linjene i en fil.

Syntaksen for halekommandoen er som følger:

hale. 

For å se oppstartsloggen for systemet ditt kan du for eksempel bruke følgende kommando:

sudo tail /var/log/boot.log. 

Utgangen vil være noe slikt:

Linux hale kommando

Hvordan spesifisere antall linjer som skal vises

Angi antall linjer du vil se ved å bruke følgende kommando:

sudo hale -n20. 

Eksemplet ovenfor viser de siste 20 linjene i filen.

Linux hale spesifikk lengde

Alternativt kan du bruke -n bytt for å spesifisere startpunktet i filen også. Kanskje du vet at de første 30 radene i en fil er kommentarer, og du vil bare se dataene i en fil. I dette tilfellet vil du bruke følgende kommando:

sudo hale -n+20. 
Linux tail utgangspunkt

Halekommandoen brukes ofte sammen med mer kommandoen slik at du kan lese filen en side om gangen.

For eksempel:

sudo hale -n+20 | mer. 

Kommandoen ovenfor sender de siste 20 linjene fra filnavn og sender den som input til more-kommandoen.

Du kan også bruke halekommandoen til å vise et visst antall byte i stedet for linjer:

sudo hale -c20. 
Linux-halebytes

Bruk den samme bryteren for å begynne å vise fra et bestemt bytenummer som følger:

sudo hale -c+20. 

Hvordan overvåke en loggfil

Du vil merke at vi har inkludert sudo innenfor de fleste kommandoene. Denne inkluderingen er bare nødvendig der du ikke har tillatelser som din normale bruker til å se filen og du trenger økte tillatelser.

Mange skript og programmer sendes ikke ut til skjermen, men legger til en loggfil mens de kjører. Bruk følgende hale kommando for å sjekke hvordan loggen endres hvert så mange sekunder:

sudo hale -F -s20. 

Du kan også bruke tail for å fortsette å overvåke en logg til en prosess dør som følger:

sudo hale -F --pid=1234. 

For å finne prosess-IDen for en prosess kan du bruke følgende kommando:

ps -ef | grep. 

Tenk deg for eksempel at du redigerer en fil ved hjelp av nano. Du kan finne prosess-IDen for nano ved å bruke følgende kommando:

ps -ef | grep nano. 

Utdataene fra kommandoen vil gi deg en prosess-ID. Tenk deg at prosess-ID-en er 1234. Du kan nå kjøre tail mot filen som blir redigert av nano ved å bruke følgende kommando:

sudo hale -F --pid=1234. 

Hver gang filen lagres i nano, vil halekommandoen plukke opp de nye linjene nederst. Kommandoen stopper bare når nano-editoren er lukket.

Hvordan prøve halekommandoen på nytt

Hvis du får en feilmelding mens du prøver å kjøre halekommandoen fordi den av en eller annen grunn er utilgjengelig, kan du bruke prøv på nytt parameter for å fortsette å prøve til filen er tilgjengelig.

sudo hale --forsøk på nytt -F. 

Dette fungerer egentlig bare i forbindelse med -F bytte, da du må følge filen for å prøve på nytt.

Sammendrag

For å finne ut mer informasjon om halekommandoen kan du bruke følgende kommando:

mann hale.