Linux giver dig flere hjælpeprogrammer, som du kan bruge til at behandle tekstfiler. Uanset om du vil fjerne duplikatdata eller sortere indholdet i en fil, har Linux-kommandolinjeværktøjer alt hvad du behøver.

Denne artikel viser sorteringskommandoen, og hvordan du kan bruge den til at sortere indholdet i en tekstfil og arrangere det i overensstemmelse hermed.

Hvad er sorteringskommandoen?

Som nævnt ovenfor hjælper sorteringskommandoen en bruger med at arrangere indholdet af en tekstfil i en bestemt rækkefølge. Der er flere muligheder, der giver dig mulighed for at sortere filen efter dit ønske. Det er et standard Linux-program, der kan sortere en tekstfil alfabetisk, numerisk, efter kolonne og mere i enten normal eller omvendt rækkefølge.

Andre funktioner i kommandoen inkluderer ignorering af tegn, mens du sorterer, sorterer en fil efter måned, ignorerer blanke i en fil og tilfældig sortering. Ved hjælp af sortering kan du også kontrollere, om en fil allerede er sorteret eller ej.

instagram viewer

Sådan bruges sortering i Linux

Selvom sortering indeholder flere metoder og flag, som du kan bruge, er det stadig let at lære.

Grundlæggende syntaks

Den grundlæggende syntaks ved brug af sortering er:

sorter filnavn

...hvor filnavn er den absolutte eller relative sti til den tekstfil, du vil sortere.

Som standard arrangerer sorteringen indholdet efter følgende kriterier:

  1. Linjer, der begynder med numeriske tegn, har højeste prioritet.
  2. Kommandoen sorterer linjerne alfabetisk efter at have sorteret linjerne, der begynder med tal.
  3. Linjer, der starter med små bogstaver, går forud for linjerne, der starter med det samme tegn i store bogstaver.

Overvej en tekstfil, der hedder textfile.txt indeholdende følgende oplysninger:

Sådan sorteres filen ved hjælp af standardkonfiguration:

sorter tekstfil.txt

Produktion:

Opret en ny outputfil

Sorteringskommandoen ændrer ikke indholdet af filen. Det sender simpelthen det sorterede indhold til standardoutputtet. Dette betyder dog ikke, at sort ikke kan oprette en ny fil. Du kan bruge -o flag for at specificere navnet på den sorterede fil, og sorteringen opretter automatisk filen for dig og tilføjer indholdet.

sorter -o sorteret filfilnavn

...hvor sorteret fil er navnet på outputfilen og filnavn er den originale fil, der skal sorteres.

At sortere textfile.txt og opret en ny outputfil til indholdet:

sorter -o sorteret.txt tekstfil.txt

Produktion:

Sorter flere filer

For at sortere mere end en fil på én gang skal du blot sende filnavne adskilt med Plads Karakter.

sorter tekstfile.txt textfile2.txt

Produktion:

Bemærk, at sortering vil flette output af filerne og vise dem sammen i terminalen.

Omvendt Sorter en fil

Hvis du vil vende indholdet af arrangementet, skal du bruge -r flag med standardkommandoen. Det -r i den følgende kommando står for Baglæns.

sorter -r textfile.txt

Produktion:

Sorter en fil numerisk

For at sortere en fil, der indeholder numeriske data, skal du bruge -n flag med kommandoen. Som standard arrangerer sorteringen dataene i stigende rækkefølge.

sorter -n numbers.txt

Produktion:

Hvis du vil sortere i faldende rækkefølge, skal du vende arrangementet ved hjælp af -r mulighed sammen med -n flag i kommandoen.

sorter -rn numbers.txt

Produktion:

Ignorer tegnsag under sortering

Som standard tages der hensyn til karakteren af ​​indholdet. Linjer, der starter med små bogstaver, går forud for linjer, der starter med den store bogstavversion af det samme tegn. For eksempel vil "han er en dreng" gå forud for "han er en dreng".

Hvis du vil sortere for at ignorere tegn, skal du angive -f eller den - stor sag flag som følger:

sorter -f textfile.txt
sorter --ignore-case textfile.txt

Produktion:

Sorter en fil baseret på måned

Bruger -M flag, kan du ændre rækkefølgen af ​​en fils indhold baseret på månedsnavne.

sorter -M textfile2.txt

Produktion:

Ignorer førende emner

Nogle gange kan den fil, du vil sortere, indeholde mellemrum eller faner. For at ignorere sådanne tomme tegn skal du bruge -b flag.

sorter -b fileblanks.txt

Produktion:

Sorter en fil efter en kolonne

Hvis du har en tekstfil med data arrangeret i separate kolonner, kan du sortere filen efter indholdet af en kolonne. Alt hvad du skal gøre er at sende kolonnenummeret sammen med -k flag.

Overvej en tekstfil, der indeholder filoplysninger med forskellige kolonner. At sortere en fil med navnet output.txt ifølge den ottende kolonne:

sorter -k8 -rn output.txt

Produktion:

Rørsortering med andre kommandoer

Du kan endda bruge sortering med andre Linux-kommandoer til at ændre arrangementets placering. For eksempel at sortere output fra kommandoen ls alt efter størrelsen på filerne:

ls -la | sorter -k5 -rn

Produktion:

Sorter en fil tilfældigt

Du kan bruge -R flag, hvis du vil randomisere rækkefølgen af ​​linjerne i en tekstfil. Overvej filen textfile.txt:

sorter -R textfile.txt

Produktion:

Sorter versionsnumre i en fil

Hvis du har en tekstfil, der indeholder versionoplysninger tilknyttet en pakke, kan du sortere dens indhold ved hjælp af -V eller --version-sort flag.

sorter -V version.txt
sorter --version-sorter version.txt

Produktion:

Kontroller, om en fil er sorteret

Det -c flag hjælper dig med at identificere filer, der allerede er sorteret i henhold til de angivne muligheder. Hvis indholdet af filen er ordentligt sorteret, viser sorteringen ikke nogen output.

For at kontrollere, om filen textfile.txt er sorteret:

sorter -c textfile.txt

Lad os nu sortere filen og gemme dens output i en ny fil med navnet sorteret.txt. Ved udstedelse af følgende kommando:

sorter -c sorteret.txt

Produktion:

Du kan også angive forskellige flag for at kontrollere arrangementet af filen i henhold til bestemte kriterier. For eksempel for at kontrollere, om filen numbers.txt sorteres i faldende rækkefølge:

sorter -c -rn numbers.txt

Du vil se et output, der angiver, at filen ikke er sorteret korrekt. Lad os sortere filen og kontrollere, om den nye fil består testen.

sorter -o sorteret.txt -rn numre.txt
sorter -c -rn sorteret.txt

Produktion:

Sorter filen og fjern duplikater

Den fil, du arbejder med, kan indeholde duplikatdata. Selvom du kan bruge kommandoen uniq For at fjerne sådanne oplysninger fra filen kan sort udføre denne opgave for dig. Det -u eller --enestående flag er, hvad du har brug for.

Overvej en fil med navnet duplikat.txt:

Sådan sorteres filen og fjernes de gentagne data:

sorter -u duplikat.txt

Produktion:

Du kan se det, når du bruger -u flag, sort viser kun forskellige linjer og arrangerer dem i henhold til de angivne kriterier.

Arbejde med tekstfiler i Linux

Selvom styrken i kommandolinjeteksteditorer ikke kan matches, kan du stadig vælge en grafisk editor som gedit til let at ændre indholdet i en tekstfil. Det er også et bedre valg for dem, der er nye i Linux og ikke kan håndtere terminalen.

Den bedste måde at starte med kommandolinjen og Linux generelt er ved at øve grundlæggende kommandoer først. Efter at have dækket de grundlæggende forsyningsselskaber er det sandsynligvis den bedste tilgang gradvist at gå videre mod mere komplekse kommandoer.

E-mail
Linux Commands Reference Cheat Sheet

Dette enkle snydeark hjælper dig med at blive fortrolig med Linux-kommandolinieterminalen på ingen tid.

Læs Næste

Relaterede emner
  • Linux
  • Filhåndtering
  • Linux
  • Linux-kommandoer
Om forfatteren
Deepesh Sharma (69 artikler offentliggjort)

Deepesh er Junior Editor til Linux på MUO. Han har skrevet informativt indhold på internettet i over 3 år. I sin fritid nyder han at skrive, lytte til musik og spille sin guitar.

Mere fra Deepesh Sharma

Abonner på vores nyhedsbrev

Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!

Et trin mere !!!

Bekræft venligst din e-mail-adresse i den e-mail, vi lige har sendt dig.

.