sort – konsolowe narzędzie służące do sortowania linii w podanych plikach (bądź standardowym wejściu) ze względu na znaki, którymi zaczynają się one same lub odpowiednia kolumna w nich zawarta.
Użycie[]
<terminal>
$ sort [opcje] [pliki] ...
</terminal>
Można podać dowolną liczbę plików. Jeśli nie podane zostały żadne pliki lub jeden z nich to -
(myślnik), zostanie użyte standardowe wejście.
Najczęściej używane przełączniki[]
-b
lub--ignore-leading-blanks
– ignoruje znaki białe na początku linii;-f
lub--ignore-case
– ignoruje wielkość liter;-k X
lub--key=X
– sortuje biorąc pod uwagę X-tą kolumnę;-n
lub--numeric-sort
– sortuje ze względu na liczby, którymi zaczynają się linie;-o X
lub--output=X
– zapisuje posortowane linie do plikuX
, zamiast wyświetlać je na standardowe wyjście;-r
lub--reverse
– odwraca sortowanie;-t X
lub--field-separator=X
– używaX
jako separatora kolumn.
Przykłady[]
Zwykłe sortowanie[]
Plik plik.txt
zawiera kilka nieposortowanych opisów przełączników z poprzedniej sekcji.
-r lub --reverse – odwraca sortowanie; -f lub --ignore-case – ignoruje wielkość liter; -b lub --ignore-leading-blanks – ignoruje znaki białe na początku linii; -n lub --numeric-sort – sortuje ze względu na liczby, którymi zaczynają się linie;
Sortowanie przy użyciu polecenia sort plik.txt
spowoduje posortowanie tych opisów wg liter przełączników im odpowiadających:
<terminal>
$ sort plik.txt
-b lub --ignore-leading-blanks – ignoruje znaki białe na początku linii;
-f lub --ignore-case – ignoruje wielkość liter;
-n lub --numeric-sort – sortuje ze względu na liczby, którymi zaczynają się linie;
-r lub --reverse – odwraca sortowanie;
</terminal>
Odwrócone zwykłe sortowanie[]
Użycie polecenia sort -r plik.txt
spowoduje posortowanie linii w owym pliku, podobnie jak w poprzednim przykładzie, a następnie odwrócenie ich kolejności:
<terminal>
$ sort -r plik.txt
-r lub --reverse – odwraca sortowanie;
-n lub --numeric-sort – sortuje ze względu na liczby, którymi zaczynają się linie;
-f lub --ignore-case – ignoruje wielkość liter;
-b lub --ignore-leading-blanks – ignoruje znaki białe na początku linii;
</terminal>
Sortowanie liczbowe[]
Plik liczby.txt
zawiera kila nieposegregowanych liczb:
123 2135 54 6423 4648864465 65212 548892 231588889891
Normalne posortowanie, z użyciem komendy sort liczby.txt
spowoduje posortowanie ich w sposób alfabetyczny (tj. najpierw liczby zaczynające się od 1, potem od 2, etc.):
<terminal>
$ sort liczby.txt
123
2135
231588889891
4648864465
54
548892
6423
65212
</terminal>
Jeśli chcemy posortować je w sposób liczbowy (tj. najpierw najmniejsze liczby, potem największe), musimy użyć przełącznika -n
. Użycie polecenia sort -n liczby.txt
spowoduje podanie oczekiwanego przez nas wyniku:
<terminal>
$ sort -n liczby.txt
54
123
2135
6423
65212
548892
4648864465
231588889891
</terminal>
|
{{#seo:|keywords = Sort,polecenie Sort,Linux,polecenia,komendy,Linux polecenie Sort}}