Szukaj…


Wprowadzenie

sort to uniksowe polecenie porządkowania danych w plikach w sekwencji.

Składnia

  • sort [opcja] nazwa pliku

Parametry

Opcja Znaczenie
-u Spraw, aby każda linia wyjściowa była wyjątkowa

Uwagi

Pełna instrukcja obsługi sort online

Sortuj dane wyjściowe polecenia

Polecenie sort służy do sortowania listy linii.

Dane wejściowe z pliku

sort file.txt  

Dane wejściowe z polecenia

Możesz posortować dowolne polecenie wyjściowe. W przykładzie lista plików zgodnych ze wzorcem.

find * -name pattern | sort

Spraw, aby wyjście było wyjątkowe

Jeśli każdy wiersz wyniku musi być unikalny, dodaj opcję -u .

Aby wyświetlić właściciela plików w folderze

ls -l | awk '{print $3}' | sort -u

Sortowanie numeryczne

Załóżmy, że mamy ten plik:

test>>cat file
10.Gryffindor
4.Hogwarts
2.Harry
3.Dumbledore
1.The sorting hat

Aby posortować ten plik numerycznie, użyj opcji sort z opcją -n:

test>>sort -n file  

To powinno posortować plik jak poniżej:

1.The sorting hat  
2.Harry  
3.Dumbledore  
4.Hogwarts  
10.Gryffindor

Odwracanie kolejności sortowania: Aby odwrócić kolejność sortowania, użyj opcji -r

Aby odwrócić porządek sortowania powyższego pliku, użyj:

sort -rn file

To powinno posortować plik jak poniżej:

10.Gryffindor
4.Hogwarts
3.Dumbledore
2.Harry
1.The sorting hat

Sortuj według kluczy

Załóżmy, że mamy ten plik:

test>>cat Hogwarts 
  Harry        Malfoy        Rowena        Helga
  Gryffindor   Slytherin     Ravenclaw     Hufflepuff
  Hermione     Goyle         Lockhart      Tonks
  Ron          Snape         Olivander     Newt
  Ron          Goyle         Flitwick      Sprout

Aby posortować ten plik za pomocą kolumny jako klucza, użyj opcji k:

test>>sort -k 2 Hogwarts

Spowoduje to posortowanie pliku z kolumną 2 jako kluczem:

  Ron        Goyle        Flitwick        Sprout
  Hermione   Goyle        Lockhart        Tonks
  Harry      Malfoy       Rowena          Helga
  Gryffindor Slytherin    Ravenclaw       Hufflepuff
  Ron        Snape        Olivander       Newt

Teraz, jeśli musimy posortować plik z kluczem dodatkowym wraz z kluczem podstawowym, użyj:

sort -k 2,2 -k 1,1 Hogwarts 

Najpierw posortuje plik z kolumną 2 jako klucz podstawowy, a następnie plik z kolumną 1 jako klucz dodatkowy:

  Hermione        Goyle        Lockhart        Tonks
  Ron             Goyle        Flitwick        Sprout
  Harry           Malfoy       Rowena          Helga
  Gryffindor      Slytherin    Ravenclaw       Hufflepuff
  Ron             Snape        Olivander       Newt

Jeśli musimy posortować plik z więcej niż 1 kluczem, to dla każdej opcji -k musimy określić, gdzie kończy się sortowanie. Zatem -k1,1 oznacza rozpoczęcie sortowania w pierwszej kolumnie i zakończenie sortowania w pierwszej kolumnie.

-t opcja

W poprzednim przykładzie plik miał domyślny ogranicznik - tab. W przypadku sortowania pliku, który ma domyślny ogranicznik, potrzebujemy opcji -t, aby określić ogranicznik. Załóżmy, że mamy plik jak poniżej:

test>>cat file
5.|Gryffindor
4.|Hogwarts
2.|Harry
3.|Dumbledore
1.|The sorting hat

Aby posortować ten plik według drugiej kolumny, użyj:

test>>sort -t "|" -k 2 file

Spowoduje to posortowanie pliku jak poniżej:

3.|Dumbledore
5.|Gryffindor
2.|Harry
4.|Hogwarts
1.|The sorting hat


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow