Hur man använder det mindre kommandot på Linux

Med kommandot less kan du bläddra igenom en textfil och visa en skärmfull text varje gång. Det verkar som ett av de enklaste Linux-kommandona vid första anblicken, men det finns mycket mer än vad man kan se.

Historien om mindre

Allt i Linux – och Unix – har en historia, ingen ordlek. Ju mindre programmet är baserat på programmet mer, som ursprungligen släpptes 1978 i version 3.0 av Berkeley Software Distribution Unix (3.0BSD). mer tillät dig att gradvis bläddra igenom en textfil och visa en skärmfull text åt gången.

Eftersom nödvändigheten var uppfinningens moder var det oförmågan hos tidiga versioner av mer att bläddra bakåt genom en fil som fick Mark Nudelman att utveckla mindre och att övervinna det specifika problemet. Det arbetet startade 1983, och den första versionen släpptes utanför företaget han arbetade för 1985. Från och med oktober 2019 är han fortfarande underhållare av mindre.

Jag undrar om det finns en Linuxanvändare som inte har använt mindre? Även om de inte har använt den för att bläddra igenom en vald textfil, är chansen stor att de har använt man-kommandot. Och man ringer mindre bakom kulisserna för att visa man-sidorna.

Detta är ett kommando med många tricks i rockärmen.

Varför mindre är bättre än mer

mindre har tillkommit stadigt under åren. Den har en svindlande mängd kommandoradsalternativ och kommandotangenttryckningar i applikationen. Gör en snabb jämförelse av man page för mindre och man page för mer, och du kommer att börja se hur mindre absolut tornar upp sig över mer.

more har övervunnit sin initiala brist att inte kunna bläddra bakåt genom text, utan bara för filer. Den kan inte bläddra bakåt genom inmatning via rör. Du kan göra det med mindre.

Med sin flexibilitet när det gäller att navigera i filer, visa flera filer, söka efter text, släppa och återgå till bokmärken och hantera inmatning via rör, vinner mindre händer utan tvekan. Använd mindre istället för mer.

Läsa en fil med mindre

För att ladda en fil till mindre, ange namnet på filen på kommandoraden:

less Dr-Jekyll-and-Mr-Hyde-001.txt

Filen laddas och visas. Toppen (eller ”starten”) av filen visas i terminalfönstret. Du kan använda musens rullningshjul för att rulla framåt och bakåt genom texten.

På tangentbordet använder du mellanslagstangenten eller Page Down-tangenten för att gå framåt genom texten en skärmfull text i taget.

Page Up kommer att flytta bakåt genom filen (mot ”start” av filen.) Hem- och End-tangenterna tar dig direkt till början respektive slutet av textfilen.

Namnet på filen visas i det nedre vänstra hörnet av skärmen. När du börjar flytta runt i filen rensas den nedersta raden. Den används för att visa meddelanden till dig och för att du ska kunna skriva in kommandon.

Tryck på ”q” för att avsluta mindre.

Visar radnummer

För att få raderna i textfilen numrerade åt dig, använd alternativet -N (radnummer).

less -N Dr-Jekyll-and-Mr-Hyde-001.txt

Radnumren kan vara användbara för att guida dig tillbaka till specifika rader eller avsnitt i loggfiler och andra filer som inte är skrivna i standardprosa.

Söker på mindre

För att söka igenom texten i filen, tryck på ”/” och skriv sedan din sökfras. Sökningen är skiftlägeskänslig. Din sökfras visas på den nedre raden på displayen. Tryck på ”Enter” för att utföra sökningen.

I det här exemplet är söktermen ”Enfield” och detta kan ses längst ner på skärmen.

Söker efter

Sökningen sker från den aktuella sidan till slutet av textfilen. För att söka i hela filen, flytta till toppen av filen innan du söker.

Du kommer att få veta om det inte finns några matchningar. Om en matchning hittas flyttas displayen för att visa det hittade objektet.

För att hitta nästa matchande objekt, tryck på ”n”. För att söka efter föregående matchande objekt, tryck på ”N”.

För att söka bakåt från din nuvarande position i filen mot början av filen, tryck på ”?” nyckel och skriv din sökterm. För att hitta nästa matchande objekt, tryck på ”n”. För att söka efter föregående matchande objekt, tryck på ”N”.

Observera att när du söker bakåt är nästa matchande objekt (hittas med ”n”) nästa som är närmare toppen av filen, och ”N” för föregående matchande objekt letar efter ett matchande objekt närmare botten av filen. med andra ord, ”n” och ”N” byter sökriktning när du söker bakåt.

Öppna en fil med en sökterm

Du kan använda alternativet -p (mönster) för att få mindre att söka igenom textfilen och hitta det första matchande objektet. Den kommer då att visa sidan med det matchande sökobjektet i, istället för den första sidan i filen. Såvida inte sökobjektet finns på första sidan i filen.

Observera att det inte finns något mellanslag mellan -p och söktermen.

less -pEnfield Dr-Jekyll-and-Mr-Hyde-001.txt

Filen visas med den första matchande söktermen markerad.

Navigera på mindre: de mest användbara tangenterna

Använd dessa tangenter för att flytta och söka igenom textfilen.

Flytta en rad framåt: nedåtpil, Enter, e eller j
Flytta bakåt en rad: Pil upp, y eller k
Flytta en sida framåt: Mellanslagstangent eller Page Down
Flytta bakåt en sida: Page Up eller b
Bläddra åt höger: Högerpil
Bläddra åt vänster: Vänsterpil
Hoppa till toppen av filen: Hem eller g
Hoppa till slutet av filen: End eller G
Hoppa till en specifik rad: Skriv radnumret och tryck sedan på ”g”
Hoppa till en procentsats genom filen: Skriv procentsatsen och tryck sedan på ”p” eller ”%.” (Du kan till och med ange decimalvärden, så för att hoppa till punkten 27,2 procent genom filen, skriv ”27,2” och tryck sedan på ”p” eller ”%.” Varför skulle du vilja använda decimaler? Jag har ärligt talat ingen aning.)
Sök framåt: Tryck på ”/” och skriv din sökning, som ”/Jekyll”, och tryck på Enter
Sök bakåt: Tryck på ”?” och skriv din sökning, som ”/Hyde”, och tryck på Enter
Nästa matchande sökobjekt: n
Tidigare matchande sökobjekt: N
Avsluta: q

Pressa ihop tomma linjer

Alternativet -s (pressa tomma rader) tar bort en serie tomma rader och ersätter dem med en enda tom rad.

Det finns ett par på varandra följande tomma rader i vår exempelfil, låt oss se hur mindre behandlar dem när vi använder alternativet -s:

less -s Dr-Jekyll-and-Mr-Hyde-001.txt

Alla de dubbla (eller fler) tomma raderna har ersatts av en enda tom rad i varje fall.

Visa flera filer

less kan öppna flera filer åt dig. Du kan hoppa fram och tillbaka från fil till fil. mindre kommer ihåg din position i varje fil.

less Dr-Jekyll-and-Mr-Hyde-001.txt Dr-Jekyll-and-Mr-Hyde-002.txt

Filerna öppnas och den första filen visas. Du visas vilken fil du tittar på och hur många filer som har laddats. Detta är markerat nedan.

För att se nästa fil, tryck på ”:” och tryck sedan på ”n”.

Din skärm kommer att ändras till att visa den andra filen, och informationen på den nedersta raden uppdateras för att visa att du visar den andra filen. Detta är markerat nedan.

För att flytta till föregående fil, skriv ”:” och tryck sedan på ”p.”

Använder märken

less låter dig släppa en markör så att du enkelt kan återgå till en markerad passage. Varje markör representeras av en bokstav. För att släppa ett märke på den översta visade raden, tryck på ”m” och tryck sedan på bokstaven du vill använda, till exempel ”a”.

När du trycker på ”m” visar den nedre raden på displayen en uppmaning medan den väntar på att du ska trycka på en bokstavsknapp.

Så fort du trycker på en bokstav tas uppmaningen bort.

Från vilken annan plats som helst i filen kan du enkelt återgå till ett märke genom att trycka på apostrof (eller enstaka citattecken) ”’” och sedan trycka på bokstaven i märket du vill återvända till. När du trycker på ”’”-tangenten uppmanas du att ange det märke du vill gå till.

Tryck på bokstaven i märket du vill återgå till, så visas den delen av textfilen för dig.

Använda röringång med mindre

less kan visa information som kommer som en ström av rörlig text, lika enkelt som om det vore en fil.

Kommandot dmesg visar kärnringbuffertmeddelanden. Vi kan skicka utdata från dmesg till less med följande kommando:

dmesg | less

Utdata från dmesg visas.

Du kan bläddra och söka igenom den rörliga ingången precis som om det vore en fil. För att se de senaste meddelandena, tryck på ”Avsluta” för att gå till botten av filen.

När nya meddelanden kommer in måste du fortsätta att trycka på ”Avsluta” för att tvinga färre att visa botten av filen. Det här är inte särskilt bekvämt. För att få mindre alltid att visa botten av texten, även när ny data läggs till, använd +F (framåt) alternativet. Notera användningen av + och inte – som alternativflagga.

dmesg | less +F

Alternativflaggan + berättar mindre för att behandla alternativet som om du hade använt det kommandot i mindre. Så om du glömde att använda +F-alternativet, tryck på ”F” i mindre .

less visar botten av texten, som visar de senaste meddelandena från dmesg. Den visar ett meddelande om att den väntar på mer data. När fler kärnmeddelanden visas rullar displayen så att du alltid kan se de senaste meddelandena.

Du kan inte bläddra eller bläddra i det här läget; den ägnas åt att visa botten av texten. För att gå ur hans läge, tryck Ctrl+c, och du kommer att återgå till det vanliga mindre interaktiva läget.

Redigera filer med mindre

Du kan redigera filer med mindre — ja, typ. Det här kommandot kan inte redigera filer, men om du skriver ”v” när du tittar på en fil, överförs filen till din standardredigerare. När du lämnar redaktören återgår du till mindre.

Tryck på ”v” när du tittar på en fil i mindre:

Filen laddas in i standardredigeraren, i det här fallet nano:

När du stänger editorn blir du mindre.

Sammanfattningsvis

Hur kontraintuitivt det än kan verka, i detta falllösa > mer.