Tutorial på UNIX Sorter Command

Sort kommandoen UNIX brukes til å sortere ASCII tekstfiler. Den kan brukes til å sortere filer av alle størrelser. Kommandoen kan også brukes til å sortere mer enn én fil og legg utgang til en enkelt fil. Data kan sorteres alfabetisk eller numerisk på alle felt i filen.

bruk

Sort kommandoen har syntaksen "sort [alternativer] filnavn (e)." Uten noen alternativer, bruker sort kommandoen hele linjen som sorteringsnøkkel standard sorterer filen alfabetisk og i stigende rekkefølge, og skriver resultatet til skjermen. Linjene inne i filen, trenger ikke å være av samme størrelse. Felt i filen er atskilt med et mellomrom som standard.

Du kan bruke kommandoalternativer for å endre standardvirkemåten til sort kommandoen. For å sende utdata til en fil i stedet for skjermen, bruker du den "-o" alternativet. Syntaksen ville være "sortere -O utgang innspill."

Hvis du har en fil som inneholder numeriske data, må du bruke "-n" for å fortelle kommandoen for å sortere numerisk. Syntaksen ville være "sort -n filnavn." Selvfølgelig kan du legge til "-o" for å sende ut resultatene til en utgang fil. Syntaksen vil da være "sort -n -o utgang innspill."

Hvis du heller vil sortere filen i synkende rekkefølge (a) i stedet for stigende rekkefølge (az), vil du bruke "-r" alternativet. "R" står for omvendt i dette tilfellet. Syntaksen ville være "sort -r filnavn."

Sortering forutsetter at feltene er adskilt av emnene, hvilket betyr at hvert ord på en linje telles som et felt. Men du kan ha en kommadelte verdier (CSV), eller feltene kan separeres av en annen karakter, for eksempel et kolon. Hvis dette er tilfelle, bruk "-t" for å betegne feltet separator. Syntaksen for en CSV-fil ville være "slags -t, filnavn."

Sorter forutsetter at du ønsker å bruke hele linjen som sorteringsnøkkel. Hvis du bare ønsker å sortere på et bestemt felt, vil du legge til alternativet "+ m" der "m" er antall feltet minus én. For eksempel, hvis du hadde en CSV-fil som inneholder feltet fornavn, etternavn og adresse, og du ønsket å sortere på etternavn, ville syntaksen være "slags -t, en filnavn." Den "ett", sier for å sortere på andre felt. Årsaken til den merkelige nummerering skyldes det faktum at Unix-kommandoer vanligvis begynner å telle på "0", ikke "1" Kommandoen vil da sortere etternavn og bruke adressefeltet som en sekundær sorteringsalternativ.

Hvis du bare ønsket å sortere på andre felt av ovennevnte eksempel, ville du har å fortelle hva slags kommando for å stoppe sortering på det tredje feltet. For at du ville bruke "-m" alternativet, der "m" er antall feltet minus én. Å bare slag på feltet for etternavn i eksempelet ovenfor, vil du bruke syntaksen "sort t, 1 -2 filnavn."

Andre brukte alternativene inkluderer de "u" og "-d" alternativer. Den "-u" alternativet forteller kommando for å skrive bare de unike verdiene etter sortering. Hvis det er multipler av en enkelt linje, vil bare én forekomst av verdien skal skrives ut. Den "d" alternativet sier å utføre en ordbok slags filen, noe som betyr at bare blanks, tall og bokstaver er brukt i sammenligningen.

Sorter kan også brukes til å flette og sortere to filer til én utgang fil. Hvis mer enn ett filnavn er gitt som en input-fil, vil kommandoen kombinere de to filene og sortere resultatene. Når den brukes med "-o" alternativet, vil resultatet bli en enkelt fil som inneholder de sorterte verdier fra begge filene. Syntaksen ville være "sortere -o utgang inndata 1 Input2." Andre alternativer for sort kommandoen kan bli funnet i den slags hovedsiden (se "Andre ressurser" nedenfor.)