De less
laat je door een tekstbestand bladeren, waarbij elke keer een scherm met tekst wordt weergegeven. Het lijkt op het eerste gezicht een van de eenvoudigste Linux-commando’s, maar er is veel meer dan op het eerste gezicht lijkt.
De geschiedenis van minder
Alles in Linux – en Unix – heeft een geschiedenis, geen woordspeling. De less
programma is gebaseerd op het more
programma, dat aanvankelijk in 1978 werd uitgebracht in versie 3.0 van de Berkeley Software Distribution Unix (3.0BSD). more
stelde u in staat om progressief door een tekstbestand te bladeren, waarbij u een schermvol tekst tegelijk weergeeft.
Noodzaak was de moeder van de uitvinding, het was het onvermogen van vroege versies van more
om achteruit door een bestand te bladeren dat Mark Nudelman ertoe aanzet om te ontwikkelen less
en om dat specifieke probleem te overwinnen. Dat werk begon in 1983 en de eerste versie werd uitgebracht buiten het bedrijf waarvoor hij werkte in 1985. Sinds oktober 2019 is hij nog steeds de onderhouder van less
.
Ik vraag me af of er een Linux-gebruiker is die niet heeft gebruikt less
? Zelfs als ze het niet hebben gebruikt om door een gekozen tekstbestand te bladeren, is de kans groot dat ze het man
opdracht. En man
oproepen less
achter de schermen om het man
Pagina’s.
Dit is een commando met veel trucs achter de hand.
Waarom is minder beter dan meer?
less
is in de loop der jaren gestaag aangevuld. Het heeft een duizelingwekkende hoeveelheid opdrachtregelopties en opdrachttoetsaanslagen in de toepassing. Vergelijk snel de manpage voor minder en de manpage voor more
, en je zult gaan zien hoe less
torent absoluut boven more
.
more
heeft zijn aanvankelijke mislukking overwonnen door niet achterwaarts door tekst te kunnen bladeren, maar alleen voor bestanden. Het kan niet achteruit bladeren via doorgesluisde invoer. Daar kun je mee doen less
.
Met zijn flexibiliteit bij het navigeren door bestanden, het bekijken van meerdere bestanden, het zoeken naar tekst, het neerzetten van en terugkeren naar bladwijzers en het omgaan met doorgesluisde invoer, less
wint zonder twijfel. Gebruik less
in plaats van de more
.
Een bestand lezen met minder
Om een bestand in te laden less
, geef de naam van het bestand op de opdrachtregel op:
less Dr-Jekyll-and-Mr-Hyde-001.txt
Het bestand wordt geladen en weergegeven. De bovenkant (of “start”) van het bestand wordt getoond in het terminalvenster. U kunt het scrollwiel van uw muis gebruiken om vooruit en achteruit door de tekst te scrollen.
Gebruik op het toetsenbord de spatiebalk of Page Down-toets om één scherm met tekst tegelijk door de tekst te bladeren.
Page Up gaat achteruit door het bestand (in de richting van het “begin” van het bestand.) De Home- en End-toetsen brengen u rechtstreeks naar het begin en het einde van het tekstbestand.
De naam van het bestand wordt in de linkerbenedenhoek van het scherm weergegeven. Wanneer u zich in het bestand begint te verplaatsen, wordt de onderste regel gewist. Het wordt gebruikt om berichten voor u weer te geven en om opdrachten in te voeren in.
Druk op “q” om af te sluiten less
.
Regelnummers weergeven
Om de regels van het tekstbestand voor u te nummeren, gebruikt u de -N
(regelnummers) optie.
less -N Dr-Jekyll-and-Mr-Hyde-001.txt
De regelnummers kunnen handig zijn om u terug te leiden naar specifieke regels of secties in logbestanden en andere bestanden die niet in standaardproza zijn geschreven.
Zoeken in minder
Om door de tekst van het bestand te zoeken, drukt u op “/” en typt u uw zoekterm. De zoekopdracht is hoofdlettergevoelig. Uw zoekterm wordt weergegeven op de onderste regel van het scherm. Druk op “Enter” om de zoekopdracht uit te voeren.
In dit voorbeeld is de zoekterm “Enfield”, en dit is te zien aan de onderkant van het scherm.
Het zoeken vindt plaats vanaf de huidige pagina tot het einde van het tekstbestand. Om het hele bestand te doorzoeken, gaat u naar de bovenkant van het bestand voordat u zoekt.
U krijgt te horen of er geen overeenkomsten zijn. Als er een overeenkomst wordt gevonden, wordt het scherm verplaatst om het gevonden item weer te geven.
Om het volgende overeenkomende item te vinden, drukt u op “n”. Druk op “N” om het vorige overeenkomende item te zoeken.
Zoeken achteruit vanaf uw huidige positie in het bestand naar het begin van het bestand, drukt u op de “?” toets en typ uw zoekterm. Om het volgende overeenkomende item te vinden, drukt u op “n”. Druk op “N” om het vorige overeenkomende item te zoeken.
Houd er rekening mee dat wanneer u achteruit zoekt, het volgende overeenkomende item (gevonden met ‘n’) het volgende is dat dichter bij het top van het bestand, en de “N” voor het vorige overeenkomende item zoekt naar een overeenkomend item dichter bij de bodem van het bestand. met andere woorden, “n” en “N” keren hun zoekrichting om als u achteruit zoekt.
Een bestand openen met een zoekterm
U kunt de -p
(patroon) optie om te veroorzaken less
om door het tekstbestand te zoeken en het eerste overeenkomende item te vinden. Het toont dan de pagina met het overeenkomende zoekitem erin, in plaats van de eerste pagina van het bestand. Tenzij het zoekitem natuurlijk op de eerste pagina van het bestand wordt gevonden.
Merk op dat er geen ruimte is tussen de -p
en de zoekterm.
less -pEnfield Dr-Jekyll-and-Mr-Hyde-001.txt
Het bestand wordt weergegeven met de eerste overeenkomende zoekterm gemarkeerd.
Navigeren in minder: de handigste toetsen
Gebruik deze toetsen om door het tekstbestand te bladeren en te zoeken.
- Actie vooruit een lijn: Pijl omlaag, Enter, e of j
- Actie achteruit een lijn: Pijl omhoog, y of k
- Actie vooruit een bladzijde: Spatiebalk of Page Down
- Actie achteruit een bladzijde: Page Up of b
- Rol naar de Rechtsaf: Rechter pijl
- Rol naar de links: Linker pijl
- Springen naar de top van het bestand: Home of g
- Springen naar de einde van het bestand: End of G
- Springen naar een specifiek lijn: Typ het regelnummer en druk op “g”
- Springen naar een percentage een weg door het bestand: typ het percentage en druk op “p” of “%”. (Je kunt zelfs decimale waarden invoeren, dus om naar het punt 27,2 procent door het bestand te springen, typ je “27.2” en druk je op “p” of “%”. Waarom zou je decimalen willen gebruiken? Ik heb eerlijk gezegd geen idee.)
- Vooruit zoeken: Druk op “/” en typ uw zoekopdracht, zoals “/ Jekyll”, en druk op Enter
- Achteruit zoeken: Raken “?” en typ uw zoekopdracht, zoals “/ Hyde”, en druk op Enter
- De volgende passen bij zoek item: n
- Vorige passen bij zoek item: N
- Afsluiten: q
Knijp lege regels uit
De -s
(blanco regels uitknijpen) optie verwijdert een reeks lege regels en vervangt ze door een enkele lege regel.
Er zijn een aantal opeenvolgende lege regels in ons voorbeeldbestand, laten we eens kijken hoe less
behandelt ze wanneer we de -s
optie:
less -s Dr-Jekyll-and-Mr-Hyde-001.txt
Alle dubbele (of meer) lege regels zijn vervangen door telkens een enkele lege regel.
Meerdere bestanden bekijken
less
kan meerdere bestanden voor je openen. U kunt heen en weer springen van bestand naar bestand. less
onthoudt uw positie in elk bestand.
less Dr-Jekyll-and-Mr-Hyde-001.txt Dr-Jekyll-and-Mr-Hyde-002.txt
De bestanden worden geopend en het eerste bestand wordt weergegeven. U krijgt te zien naar welk bestand u kijkt en hoeveel bestanden er zijn geladen. Dit wordt hieronder toegelicht.
Om het volgende bestand te bekijken, drukt u op “:” en vervolgens op “n”.
Uw display verandert en toont het tweede bestand, en de informatie op de onderste regel wordt bijgewerkt om aan te geven dat u het tweede bestand bekijkt. Dit wordt hieronder toegelicht.
Om naar het vorige bestand te gaan, typ je “:” en druk je op “p.”
Marks gebruiken
less
laat je een marker vallen zodat je gemakkelijk naar een gemarkeerde passage kunt terugkeren. Elke markering wordt vertegenwoordigd door een letter. Om een markering op de bovenste regel te plaatsen, drukt u op “m” en vervolgens op de letter die u wilt gebruiken, zoals “a”.
Als u op “m” drukt, wordt op de onderste regel van het display een prompt weergegeven terwijl het wacht tot u op een lettertoets drukt.
Zodra u op een letter drukt, wordt de prompt verwijderd.
Vanaf elke andere locatie in het bestand kunt u gemakkelijk naar een teken terugkeren door op de apostrof (of enkele aanhalingsteken) “‘” te drukken en vervolgens op de letter van het teken waarnaar u wilt terugkeren. Als u op de toets “‘” drukt, wordt u gevraagd naar het teken waarnaar u wilt gaan.
Druk op de letter van het teken waarnaar u wilt terugkeren, en dat gedeelte van het tekstbestand wordt voor u weergegeven.
Via leidingen invoeren met minder
less
kan informatie weergeven die komt als een stroom doorgesluisde tekst, net zo gemakkelijk alsof het een bestand is.
De dmesg
commando toont de kernelringbufferberichten. We kunnen de output van dmesg
in less
met de volgende opdracht:
dmesg | less
De output van dmesg
wordt weergegeven.
U kunt door de doorgesluisde invoer bladeren en zoeken alsof het een bestand is. Om de meest recente berichten te zien, drukt u op “End” om naar de onderkant van het bestand te gaan.
Als er nieuwe berichten binnenkomen, moet u op “End” blijven drukken om te forceren less
om de onderkant van het bestand weer te geven. Dit is niet erg handig. Hebben less
laat altijd de onderkant van de tekst zien, zelfs als er nieuwe gegevens worden toegevoegd, gebruik dan de +F
(forward) optie. Let op het gebruik van +
en niet -
als optie vlag.
dmesg | less +F
De +
optie vlag vertelt less
om de optie te behandelen alsof u dat commando had gebruikt binnen less
. Dus als u bent vergeten de +F
optie, druk binnen op “F” less
.
less
geeft de onderkant van de tekst weer, die de meest recente berichten van toont dmesg
. Het geeft een bericht weer dat het op meer gegevens wacht. Als er meer kernelberichten verschijnen, scrollt het display zodat u altijd de nieuwste berichten kunt zien.
In deze modus kunt u niet scrollen of bladeren; het is gewijd aan het weergeven van de onderkant van de doorgesluisde tekst. Om zijn modus te verlaten, drukt u op Ctrl + c, en u keert terug naar het gebruikelijke less
interactieve modus.
Bestanden bewerken met minder
U kunt bestanden bewerken met less
-soort van. Deze opdracht kan geen bestanden bewerken, maar als u “v” typt wanneer u een bestand bekijkt, wordt het bestand overgebracht naar uw standaardeditor. Wanneer u de editor verlaat, keert u terug naar less
.
Druk op “v” wanneer u een bestand bekijkt in less
:
In dit geval wordt het bestand in de standaardeditor geladen nano
:
Wanneer u de editor sluit, wordt u naar less
.
Samengevat
Hoe contra-intuïtief het in dit geval ook mag lijkenless
> more
.