Betalingsmetoder Abuse

Kommandoen more i Linux

26.11.2021, 20:00

Værktøjet more er velegnet til side-for-side-visning af filer i Linux-terminalen. Det har sit navn efter more, som vises nederst på hver side. Linux-kommandoen more er en af de mest primitive kommandoer til at arbejde med tekst. Dens nærmeste slægtning, less-kommandoen, har et meget større sæt af muligheder og yderligere funktioner. Lad os se på dens syntaks og eksempler på dens brug.

Syntaks, muligheder

I Linux' terminalemulator skrives kommandoen på følgende måde:

$ more options_file

Liste over kommandomuligheder:

  • -d - udsender oplysninger i slutningen af siden om de taster, der er brugt til at fortsætte, afslutte eller modtage instruktioner;
  • -l - ignorerer sideskifttegn i teksten;
  • -f - tæller antallet af logiske linjer i stedet for skærmlinjer;
  • -p - rydder terminalskærmen, så brugeren ikke behøver at scrolle, før den næste del af teksten vises;
  • -c - eliminerer behovet for at scrolle (som -p) - viser tekst fra toppen af skærmen og sletter det tidligere output linje for linje;
  • -s - erstatter flere tomme linjer i træk med én tom linje;
  • -u - sletning af understregning;
  • -n - viser det n-te antal linjer;
  • +n - viser tekst startende fra linjen med nummer n;
  • +/leght - søg efter den angivne linje i filen og begynd at vise tekst fra den;
  • --help - kald hjælp;
  • -v (--version) - viser den aktuelle version af værktøjet.

More-kommandoen har også sine egne genvejstaster og interaktive kommandoer:

  • h (?) - hjælp (viser kun oplysninger om interaktive kommandoer);
  • SPACE - viser den næste del af teksten (som standard afhænger antallet af linjer af den aktuelle størrelse på terminalvinduet);
  • z - det samme som SPACE;
  • ENTER - viser tekst linje for linje (kommandotrin - en linje);
  • d (^D) - rul teksten med det antal linjer, der svarer til terminalens størrelse;
  • q (Q) - afslut værktøjet;
  • s - ryk en linje frem;
  • f - gå en skærmside frem;
  • b (^B) - gå en skærmside tilbage;
  • ' - gå tilbage til det sted, hvor søgningen startede;
  • = - viser det aktuelle antal linjer;
  • /pattern - søg ved hjælp af regulære udtryk;
  • n - søg efter ord og sætninger, der svarer til det sidst anvendte regulære udtryk;
  • !command (:command) - udførelse af en kommando i et sub-shell;
  • v - åbner filen i den teksteditor, der er tildelt som standard, og hvis der ikke findes nogen, bruges konsolteksteditoren til at åbne filen;
  • ^L - sletter alt andet end indholdet af filen fra skærmen;
  • :n - gå til næste fil;
  • :p - gå til den forrige fil;
  • :f - viser navnet på den aktuelle fil og antallet af linjer i den;
  • . - gentager udførelsen af den forrige kommando.

Sådan bruger du

For at se tekst fra en fil bruges kommandoen:

$ more example-file-for-more-command.txt

Du kan også angive flere filnavne efter hinanden i kommandoen og adskille dem med et mellemrum. Indholdet af disse filer vil blive vist i samme rækkefølge.

Et eksempel:

$ more abc1.txt dfg2.txt

Hvis en fil ikke ligger i den aktuelle mappe, skal du angive dens fulde adresse.

Nogle gange er det ikke nødvendigt at vise hele teksten, men kun en del af den. I sådanne tilfælde findes valgmulighederne - (minus) og + (plus), ved siden af hvilke antallet af linjer angives. Hvis man f.eks. vil se indholdet af en fil fra linje 8, skal man tilføje +8 til kommandoen, og hvis kommandoen skal vise et resultat, der består af højst 5 linjer, skal man tilføje -5:

$ more +8 -5 example-file-for-more-command.txt

Som standard tæller more Linux-kommandoen præcis skærmlinjen som en linje - det antal tegn, der passer i en række på tværs af vinduets bredde. Hvis man vil tælle i logiske strenge (når man skriver, adskilles de ved at trykke på Enter), skal man bruge indstillingen -f.

Et eksempel:

$ more -f +8 -5 example-file-for-more-command.txt

more kan ikke kun håndtere tekstfiler - output fra andre kommandoer kan omdirigeres til den (pipelining). Den første er hovedkommandoen, den anden er more med de nødvendige indstillinger. Kommandoerne er nødvendigvis adskilt af en lodret linje.

Et eksempel:

$ locate bin | more -10

Når en kommando har udgivet en del af teksten og er inaktiv og venter på yderligere brugerhandlinger, kan der udføres interaktive kommandoer. De er nødvendige for at kontrollere output.

For at finde ud af nummeret på den aktuelle linje skal du trykke på =-tasten, og for at se filen i en teksteditor skal du trykke på v-tasten.

Bemærk, at ikke alle kommandoer kan udføres, hvis output fra en anden kommando omdirigeres til hjælpeprogrammet. Åbning af en teksteditor samt at gå en side tilbage (b eller ^B) virker kun ved visning af tekstfiler.

For at få en liste over alle interaktive kommandoer skal du trykke på h-tasten.