Tutorial på UNIX Sorter Kommando

UNIX slags kommando bruges til at sortere ASCII tekstfiler.Det kan bruges til at sortere filer af enhver størrelse.Kommandoen kan endda bruges til at sortere mere end én fil og placere produktionen i en enkelt fil.Data kan sorteres alfabetisk eller numerisk på hvilket som helst felt i filen.

Usage

  • Den slags kommando har syntaksen "sort [indstillinger] filnavn (e)."Uden nogen indstillinger, den slags kommando bruger hele linjen som standard sorteringsnøgle, sorterer filen alfabetisk og i stigende rækkefølge, og udskriver output til skærmen.Linjerne i filen behøver ikke at være af samme størrelse.Felter i filen er adskilt af et mellemrum som standard.

    Du kan bruge kommandoen muligheder for at ændre standard opførsel af den slags kommando.For at sende output til en fil i stedet for skærmen, bruger du "-o" valgmulighed.Syntaksen ville være "sortere --o output input."

    Hvis du har en fil, der indeholder numeriske data, skal du bruge "-n" mulighed for at fortælle kommandoen

    til at sortere numerisk.Syntaksen ville være "sort -n filnavn."Selvfølgelig kan du tilføje den "-o" mulighed for at output resultaterne til en output-fil.Syntaksen ville så være "sort -n -o output input."

    Hvis du hellere vil sortere filen i faldende rækkefølge (za) i stedet for stigende rækkefølge (az), ville du bruge "-r" valgmulighed."R" står for omvendt i dette tilfælde.Syntaksen ville være "sort -r filnavn."

    Sorter antager, at markerne er adskilt af blanke, hvilket betyder, at hvert ord på en linje tælles som et felt.Men kan du have en fil kommaseparerede værdier (CSV), eller de felter kan være adskilt af en anden karakter, såsom et kolon.Hvis dette er tilfældet, skal du bruge "-t" mulighed for at udpege den feltseparator.Syntaksen for en CSV-fil ville være "slags -t, filnavn."

    Sorter forudsætter, at du vil bruge hele linjen, da den slags nøgle.Hvis du kun vil sortere på et bestemt felt, vil du tilføje indstillingen "+ m", hvor "m" er antallet af feltet minus en.For eksempel, hvis du havde en CSV-fil, der indeholder feltet fornavn, efternavn og adresse, og du ønskede at sortere på efternavn, ville syntaksen være "slags -t, en filnavn."Den "+1" siger at sortere på det andet felt.Grunden til den mærkelige nummerering skyldes det faktum, at Unix normalt kommandoer begynde at tælle på "0", ikke "1."Kommandoen vil så sortere efternavn og bruge adressefeltet som en sekundær sortering mulighed.

    Hvis du kun ønsker at sortere på det andet felt af ovenstående eksempel, ville du nødt til at fortælle den slags kommando til at holde op med sortering på det tredje felt.For at du ville bruge "-m" valgmulighed, hvor "m" er antallet af feltet minus en.Hvis du kun vil sortere på efternavn felt i ovenstående eksempel, ville du bruge syntaksen "slags -t, en -2 filnavn."

    Andre almindeligt anvendte muligheder omfatter de "-u" og "-d" muligheder.Den "-u" indstilling fortæller kommandoen til at udskrive kun de entydige værdier efter sortering.Hvis der er multipla af en enkelt linje, der kun én udgave af værdien udskrives.Den "-d" valgmulighed siger at udføre en ordbog slags filen, hvilket betyder, at kun emner, tal og alfabetiske tegn anvendes i sammenligningen.

    Sorter kan også bruges til at flette og sortere to filer i en enkelt output fil.Hvis mere end én filnavn er angivet som input fil, vil kommandoen kombinere de to filer og sortere resultaterne.Når det bruges med "-o" valgmulighed, vil resultatet være en enkelt fil, der indeholder de sorterede værdier fra begge filer.Syntaksen ville være "sortere -o output INPUT1 INPUT2."Andre muligheder for den slags kommando kan findes i den slags hovedsiden (se "Yderligere ressourcer," nedenfor.)

Ressourcer

  • Sort Man Side
770
0
2
Unix