Utforsk tekstfiler med «mindre» i Linux
Kommandoen «mindre» gir deg muligheten til å navigere gjennom tekstfiler, og presenterer en skjermfull med tekst om gangen. Ved første øyekast kan det se ut som en av de enkleste kommandoene i Linux, men «mindre» inneholder langt mer enn det man umiddelbart ser.
Opprinnelsen til «mindre»
I Linux – og Unix – har alt sin historie. Programmet «mindre» er basert på programmet «mer», som først ble publisert i 1978 i versjon 3.0 av Berkeley Software Distribution Unix (3.0BSD). «mer» gjorde det mulig å gradvis bla gjennom en tekstfil, og vise en skjermfull med tekst om gangen.
Behovet var oppfinnelsens mor, og det var mangelen på muligheten til å rulle bakover i filen i tidligere versjoner av «mer» som inspirerte Mark Nudelman til å utvikle «mindre» og løse dette problemet. Arbeidet startet i 1983, og den første versjonen ble utgitt i 1985. Fra oktober 2019 er han fortsatt vedlikeholder av «mindre».
Mon tro om det finnes en Linux-bruker som aldri har brukt «mindre»? Selv om man ikke har brukt den til å bla gjennom en spesifikk tekstfil, er det stor sannsynlighet for at man har brukt kommandoen «man». «man» benytter nemlig «mindre» i bakgrunnen for å vise manualsidene.
Dette er en kommando som har mange ess i ermet.
Fordeler med «mindre» over «mer»
Gjennom årene har «mindre» blitt kontinuerlig forbedret. Den har et imponerende antall kommandolinjealternativer og tastekombinasjoner i applikasjonen. En rask sammenligning av manualsiden for «mindre» og manualsiden for «mer» vil vise deg hvordan «mindre» utklasser «mer» på de fleste områder.
«mer» har overvunnet sin opprinnelige mangel på å bla bakover gjennom tekst, men kun for filer. Den klarer ikke å bla bakover i inndata fra et rør. Dette kan du gjøre med «mindre».
Med sin fleksibilitet i filnavigasjon, visning av flere filer, tekstsøk, muligheten til å lagre og gå tilbake til bokmerker, og håndtering av data via rør, er det ingen tvil om at «mindre» er et bedre valg. Bruk «mindre» istedenfor «mer».
Åpne en fil med «mindre»
For å åpne en fil i «mindre», oppgi filnavnet på kommandolinjen:
less Dr-Jekyll-and-Mr-Hyde-001.txt
Filen lastes inn og vises. Starten av filen vises i terminalvinduet. Du kan bruke musehjulet til å rulle frem og tilbake i teksten.
På tastaturet kan du bruke mellomromstasten eller Page Down-tasten for å navigere fremover i teksten, en skjermfull om gangen.
Page Up vil ta deg bakover i filen (mot begynnelsen). Home- og End-tastene tar deg direkte til henholdsvis begynnelsen og slutten av tekstfilen.
Filnavnet vises nederst til venstre på skjermen. Når du begynner å bevege deg rundt i filen, forsvinner denne linjen. Den brukes til å vise meldinger og legge inn kommandoer.
Trykk «q» for å avslutte «mindre».
Vis linjenumre
For å få linjene i tekstfilen nummerert, bruk alternativet -N (linjetall).
less -N Dr-Jekyll-and-Mr-Hyde-001.txt
Linjenumre kan være nyttige for å navigere tilbake til spesifikke linjer eller seksjoner i loggfiler og andre filer som ikke er skrevet som vanlig prosa.
Søke i «mindre»
For å søke gjennom teksten i filen, trykk «/» og skriv inn søkefrasen. Søket skiller mellom store og små bokstaver. Søkefrasen din vises nederst på skjermen. Trykk «Enter» for å utføre søket.
I dette eksemplet er søkeordet «Enfield», og dette vises nederst på skjermen.
Søket starter fra gjeldende side og fortsetter til slutten av tekstfilen. For å søke i hele filen, gå til toppen av filen før du starter søket.
Du vil få beskjed dersom det ikke er noen treff. Hvis et treff finnes, vil skjermen flyttes for å vise resultatet.
For å finne neste treff, trykk «n». For å søke etter forrige treff, trykk «N».
For å søke bakover fra din nåværende posisjon mot begynnelsen av filen, trykk «?»-tasten og skriv inn søkeordet ditt. For å finne neste treff, trykk «n». For å søke etter forrige treff, trykk «N».
Merk at når du søker bakover, vil neste treff (funnet med «n») være det neste treffet som er nærmere begynnelsen av filen, og «N» for forrige treff søker etter et treff nærmere slutten av filen. Med andre ord, «n» og «N» snur søkeretningen når du søker bakover.
Åpne en fil med et søkeord
Du kan bruke alternativet -p (mønster) for å få «mindre» til å søke gjennom tekstfilen og finne det første treffet. Den vil da vise siden med det første treffet istedenfor den første siden i filen, med mindre treffet finnes på den første siden.
Merk at det ikke er mellomrom mellom -p og søkeordet.
less -pEnfield Dr-Jekyll-and-Mr-Hyde-001.txt
Filen vises med det første treffet uthevet.
Navigering i «mindre»: De viktigste tastene
Bruk disse tastene for å flytte og søke i tekstfilen.
Gå én linje fremover: Pil ned, Enter, e eller j
Flytt bakover én linje: Pil opp, y eller k
Gå én side fremover: Mellomromstasten eller Page Down
Gå én side bakover: Page Up eller b
Bla til høyre: Høyre pil
Rull til venstre: Venstre pil
Gå til toppen av filen: Home eller g
Hopp til slutten av filen: End eller G
Hopp til en bestemt linje: Skriv inn linjenummeret og trykk «g»
Gå til en prosentvis posisjon i filen: Skriv inn prosenten og trykk deretter «p» eller «%». (Du kan til og med bruke desimaler, for eksempel «27.2» og deretter «p» eller «%». Hvorfor man bruker desimaler er uklart.)
Søk fremover: Trykk «/» og skriv inn søkeordet, som for eksempel «/Jekyll», og trykk Enter
Søk bakover: Trykk «?» og skriv inn søkeordet, som for eksempel «/Hyde», og trykk Enter
Neste treff: n
Forrige treff: N
Avslutt: q
Fjern tomme linjer
Alternativet -s (klem tomme linjer) fjerner flere tomme linjer etter hverandre og erstatter dem med en enkelt tom linje.
Det er noen påfølgende tomme linjer i eksempelfilen, la oss se hvordan «mindre» håndterer dem når vi bruker alternativet -s:
less -s Dr-Jekyll-and-Mr-Hyde-001.txt
Alle doble (eller flere) tomme linjer har blitt erstattet med en enkelt blank linje.
Vis flere filer
«mindre» kan åpne flere filer samtidig. Du kan hoppe frem og tilbake mellom filene. «mindre» husker din posisjon i hver fil.
less Dr-Jekyll-and-Mr-Hyde-001.txt Dr-Jekyll-and-Mr-Hyde-002.txt
Filene åpnes, og den første filen vises. Du vil se hvilken fil du ser på og hvor mange filer som er lastet inn. Dette er uthevet nedenfor.
For å se den neste filen, trykk «:» og deretter «n».
Skjermbildet endres til å vise den andre filen, og informasjonen på den nederste linjen oppdateres for å vise at du ser på den andre filen. Dette er uthevet nedenfor.
For å gå til forrige fil, skriv «:» og trykk deretter «p».
Bruk bokmerker
«mindre» lar deg lagre et bokmerke slik at du enkelt kan gå tilbake til en markert del av teksten. Hvert bokmerke er representert med en bokstav. For å lagre et bokmerke på den øverste viste linjen, trykk «m» og deretter bokstaven du vil bruke, for eksempel «a».
Når du trykker «m», vises en melding nederst på skjermen mens den venter på at du skal trykke en bokstavtast.
Så snart du trykker på en bokstav, forsvinner forespørselen.
Fra en hvilken som helst annen plassering i filen kan du enkelt gå tilbake til et bokmerke ved å trykke apostrof («) og deretter bokstaven for bokmerket du vil gå tilbake til. Når du trykker på apostrof, blir du bedt om å spesifisere bokmerket.
Trykk bokstaven for bokmerket du vil gå tilbake til, og den delen av tekstfilen vil vises.
Bruk av rør med «mindre»
«mindre» kan vise informasjon som kommer som en strøm med tekst, like enkelt som om det var en fil.
Kommandoen «dmesg» viser kjernens ringbuffermeldinger. Vi kan overføre utdata fra «dmesg» til «less» ved å bruke følgende kommando:
dmesg | less
Utdata fra «dmesg» vises.
Du kan bla og søke gjennom inndataene i røret akkurat som om det var en fil. For å se de nyeste meldingene, trykk «End» for å gå til bunnen av filen.
Etter hvert som nye meldinger kommer, må du fortsette å trykke «End» for å tvinge «mindre» til å vise bunnen av filen. Dette er ikke veldig praktisk. For å få «mindre» til å alltid vise bunnen av teksten, selv når nye data legges til, bruk +F (fremover). Legg merke til bruken av + og ikke – som alternativflagg.
dmesg | less +F
Alternativflagget + forteller «mindre» å behandle alternativet som om du hadde brukt kommandoen inne i «mindre». Så hvis du har glemt å bruke +F-alternativet, kan du trykke «F» i «mindre».
«mindre» viser bunnen av teksten, som viser de siste meldingene fra «dmesg». Den viser en melding om at den venter på mer data. Når flere kjernemeldinger vises, ruller skjermen slik at du alltid kan se de nyeste meldingene.
Du kan ikke bla eller navigere i denne modusen; den er dedikert til å vise bunnen av teksten. For å forlate denne modusen, trykk Ctrl+c, og du vil gå tilbake til den vanlige interaktive modusen i «mindre».
Redigere filer med «mindre»
Du kan redigere filer med «mindre» – på en måte. Denne kommandoen kan ikke redigere filer direkte, men hvis du skriver «v» mens du ser på en fil, overføres filen til standardredigeringsprogrammet. Når du forlater redigeringsprogrammet, returneres du til «mindre».
Trykk «v» mens du ser på en fil i «mindre»:
Filen lastes inn i standard redigeringsprogram, i dette tilfellet «nano»:
Når du lukker redigeringsprogrammet, returneres du til «mindre».
Konklusjon
Selv om det kan virke litt motintuitivt, er i dette tilfellet «mindre» > «mer».