logo

Sådan sorteres linjer i tekstfiler i Linux | sorteringskommando

SORT-kommandoen bruges til at sortere en fil og arrangere posterne i en bestemt rækkefølge. Som standard sorterer sorteringskommandoen filen, forudsat at indholdet er ASCII. Brug af muligheder i sorteringskommandoen kan også bruges til at sortere numerisk.

  • SORT-kommandoen sorterer indholdet af en tekstfil, linje for linje.
  • sort er et standard kommandolinjeprogram, der udskriver linjerne i dets input eller sammenkædning af alle filer, der er opført i dens argumentliste i sorteret rækkefølge.
  • Sorteringskommandoen er et kommandolinjeværktøj til at sortere linjer med tekstfiler. Det understøtter sortering alfabetisk, i omvendt rækkefølge, efter nummer, efter måned, og kan også fjerne dubletter.
  • Sorteringskommandoen kan også sortere efter elementer, der ikke er i begyndelsen af ​​linjen, ignorere versalfølsomhed og returnere, om en fil er sorteret eller ej. Sortering udføres baseret på en eller flere sorteringsnøgler udtrukket fra hver inputlinje.
  • Som standard tages hele inputtet som sorteringsnøgle. Tomt mellemrum er standardfeltseparatoren.

Sorteringskommandoen følger disse funktioner som angivet nedenfor:



  1. Linjer, der starter med et tal, vises før linjer, der begynder med et bogstav.
  2. Linjer, der starter med et bogstav, der optræder tidligere i alfabetet, vises før linjer, der starter med et bogstav, der optræder senere i alfabetet.
  3. Linjer, der starter med et stort bogstav, vises før linjer, der starter med det samme bogstav med små bogstaver.

Indholdsfortegnelse

Syntaks af slags Kommando i Linux

Her,

' muligheder ' henviser til de forskellige flag og parametre, der kan bruges til at tilpasse sorteringsadfærden, og 'fil' er navnet på den fil, der skal sorteres.



Hvis der ikke er angivet nogen fil, ' sortere ' læses fra standardindgangen.

Tilgængelige indstillinger i Sorter kommando

Muligheder

Beskrivelse



-O

Angiver en outputfil for de sorterede data. Funktionelt svarer til at omdirigere output til en fil.

-r

Sorterer data i omvendt rækkefølge (faldende).

-n

Sorterer en fil numerisk (fortolker data som tal).

kører scripts i linux

-Ingen

Sorterer en fil med numeriske data i omvendt rækkefølge. Kombinerer -n og -r muligheder.

fizzbuzz java

-k

Sorterer en tabel baseret på et bestemt kolonnenummer.

-c

Kontrollerer, om filen allerede er sorteret og rapporterer eventuelle forstyrrelser.

-i

Sorterer og fjerner duplikerede linjer, hvilket giver en unik sorteret liste.

-M

Sorterer efter månedsnavne.

Sådan sorteres linjer i tekstfiler i Linux ved hjælp af sorteringskommando

Lad os starte med et simpelt eksempel. Overvej en fil med navnet 'file.txt' med følgende indhold:

cat file.txt>
Viser indholdet af filen ved hjælp af kat-kommando

Viser indholdet af filen ved hjælp af kat-kommando

Her brugte vi cat-kommando til at vise indholdet inde i filnavnet 'file.txt'.

For at sortere linjerne alfabetisk kan du bruge følgende kommando:

sort file.txt>
sorter linjer i tekst ved hjælp af sorteringskommandoen

sorter linjer i tekst ved hjælp af sorteringskommandoen

Bemærk: Denne kommando ændrer faktisk ikke inputfilen, dvs. file.txt . Vi kan verificere dette vha kat kommando.

der foretages ingen ændring af den rigtige fil

der foretages ingen ændring af den rigtige fil

Sådan sorteres linjer i tekstfiler med store og små bogstaver ved hjælp af sorteringskommando

Sorteringsfunktion med mix-fil, dvs. store og små bogstaver: Når vi har en blandingsfil med både store og små bogstaver, vil først de store bogstaver blive sorteret efter med de små bogstaver.

Eksempel: Hvis vi har en tekstfil, som har både store og små bogstaver.

cat mix.txt>
Viser indholdet af filen ved hjælp af kat-kommando

Viser indholdet af filen ved hjælp af kat-kommando

Her brugte vi cat-kommando til at vise indholdet inde i filnavnet 'mix.txt'.

For at sortere de linjer alfabetisk, som indeholder store og små bogstaver, kan du bruge følgende kommando:

sort mix.txt>
sorter store og små bogstaver i tekst ved hjælp af sorteringskommandoen

sorter store og små bogstaver i tekst ved hjælp af sorteringskommandoen

Sådan udføres numerisk sortering i linjer i tekstfiler ved hjælp af sorteringskommando

Som standard behandler 'sort' tal som tekst og sorterer dem i overensstemmelse hermed. Hvis du vil udføre numerisk sortering, skal du bruge '-n' muligheden:

cat file1.txt>
Viser indholdet af filen ved hjælp af kat-kommando

Viser indholdet af filen ved hjælp af kat-kommando

Her brugte vi cat-kommando til at vise indholdet inde i filnavnet 'file1.txt'.

java metode tilsidesættelse

Nu vil vi sortere de numeriske data ved hjælp af sorteringskommandoen som følger.

sort file1.txt>
sortering af numeriske data i linux-fil

sortering af numeriske data i linux-fil

Sådan sorteres linjer i omvendt rækkefølge i Linux-fil ved hjælp af sorteringskommando

For at sortere i omvendt rækkefølge kan du bruge '-r' muligheden:

Eksempel : Hvis vi ønsker at sortere linjer i omvendt rækkefølge i en Linux-fil, kan vi bruge sorteringskommandoen med -r mulighed, antag at vi har et filnavn example.txt som vist nedenfor.

cat example.txt>
bruge kat-kommandoen til at vise indhold i filen

bruge kat-kommandoen til at vise indhold i filen

Sorter nu linjer i omvendt rækkefølge med ` -r` mulighed i sorteringskommando

sort -r example.txt>
sortering af linjer i omvendt rækkefølge ved hjælp af -r med sorteringskommando

sortering af linjer i omvendt rækkefølge ved hjælp af -r med sorteringskommando

Sådan sorteres specifikke filer i Linux-filer ved hjælp af sorteringskommando

Forestil dig, at du har en fil med navnet 'employee_data.txt', der indeholder oplysninger om medarbejdere i et fane-separeret format. Hver linje repræsenterer en post med detaljer såsom medarbejder-id, navn, afdeling og løn, adskilt af faner. Du ønsker at organisere disse data baseret på afdelingen og vise resultaterne i alfabetisk rækkefølge.

For eksempel : Hvis vores filnavn er werknemer_data.txt og indholdet i det er som følger.

cat employee_data.txt>
Viser indholdet af filen ved hjælp af kat-kommando

Viser indholdet af filen ved hjælp af kat-kommando

zip kommando i linux

For at opnå dette kan du bruge 'sort'-kommandoen

sort -k3 employee_data.txt>

Forklaring:

-k3 : Denne mulighed angiver, at sorteringen skal udføres ud fra den tredje kolonne (afdeling).

sortering af en bestemt kolonne ved hjælp af sorteringskommandoen

sortering af en bestemt kolonne ved hjælp af sorteringskommandoen

I dette eksempel er medarbejderposterne nu sorteret alfabetisk baseret på kolonnen 'Afdeling'. 'Sortér'-kommandoen med den brugerdefinerede afgrænsning giver dig mulighed for effektivt at organisere og analysere fane-separerede data, hvilket gør det til et værdifuldt værktøj til at administrere struktureret information i forskellige scenarier.

Anvendelse og anvendelse af sorteringskommando:

  1. Det kan sortere enhver type fil, det være sig tabelfil tekstfil numerisk fil og så videre.
  2. Sortering kan implementeres direkte fra en fil til en anden, uden at det nuværende arbejde hæmmes.
  3. Sortering af tabelfiler på basis af kolonner er blevet gjort meget enklere og nemmere.
  4. Så mange muligheder er tilgængelige for sortering på alle mulige måder.
  5. Den mest fordelagtige brug er, at en bestemt datafil kan bruges mange gange, da der ikke foretages nogen ændring i den medfølgende inputfil.
  6. Originale data er altid sikre og ikke hæmmet.

Ofte stillede spørgsmål om sorteringskommando

Kan kommandoen 'sort' bruges til at sortere filer i faldende rækkefølge som standard?

Nej, kommandoen 'sort' sorterer filer i stigende rækkefølge som standard. For at opnå faldende rækkefølge skal '-r'-indstillingen bruges.

Hvordan kan jeg sortere en fil baseret på en bestemt kolonne ved hjælp af 'sort'-kommandoen?

Brug muligheden '-k' efterfulgt af kolonnenummeret til at sortere en fil baseret på en specifik kolonne.

For eksempel,

sort -k 2 data.txt>

Dette vil sortere baseret på den anden kolonne.

Hvad er forskellen mellem at bruge '-o'-indstillingen og omdirigere output til en fil, når du bruger 'sort'-kommandoen?

Begge metoder opnår det samme resultat ved at gemme det sorterede output til en fil. '-o'-indstillingen gør det muligt at specificere outputfilen direkte i kommandoen, mens omdirigering (f.eks. ` sort file.txt>output.txt`> ) opnår samme resultat.

Hvordan kan jeg kontrollere, om en fil allerede er sorteret ved hjælp af 'sort'-kommandoen?

Brug muligheden '-c' med kommandoen 'sort' (f.eks. sort -c file.txt> ). Hvis filen allerede er sorteret, vil der ikke være noget output. Hvis der er uordnede linjer, vil de blive anmeldt.

Er det muligt at sortere en fil med numeriske data i omvendt rækkefølge ved hjælp af 'sort'-kommandoen?

Ja, '-n'-indstillingen sorterer filer med numeriske data, og '-r'-indstillingen kan kombineres med den (f.eks. sort -nr numbers.txt> ) for at opnå en omvendt numerisk sortering.

Konklusion

I denne artikel diskuterede vi kommandoen 'sort' i Linux, som er et kraftfuldt værktøj til at arrangere tekstfiler i forskellige rækkefølger. Det understøtter alfabetisk, numerisk og omvendt sortering sammen med muligheder for at sortere specifikke kolonner og fjerne dubletter. Kommandoen er alsidig og håndterer forskellige filtyper, inklusive tabeller og numeriske data. Artiklen giver et omfattende overblik over kommandoen 'sort', der dækker syntaks, muligheder og praktiske eksempler. Ofte stillede spørgsmål (FAQ'er) omhandler almindelige forespørgsler, hvilket gør det til en værdifuld ressource til effektiv dataorganisering og analyse på Linux-kommandolinjen.