Linux udostępnia kilka narzędzi, których można używać do przetwarzania plików tekstowych. Niezależnie od tego, czy chcesz usunąć zduplikowane dane, czy posortować zawartość pliku, narzędzia wiersza polecenia systemu Linux mają wszystko, czego potrzebujesz.
W tym artykule przedstawimy polecenie sortowania i pokażemy, jak można go używać do sortowania zawartości w pliku tekstowym i odpowiedniego jej rozmieszczania.
Jakie jest polecenie rodzaju?
Jak wspomniano powyżej, polecenie sort pomaga użytkownikowi uporządkować zawartość pliku tekstowego w określonej kolejności. Dostępnych jest kilka opcji, które pozwalają posortować plik zgodnie z własnymi życzeniami. Jest to standardowy program linuksowy, który może sortować plik tekstowy alfabetycznie, numerycznie, według kolumn i nie tylko, w normalnej lub odwrotnej kolejności.
Inne funkcje polecenia obejmują ignorowanie wielkości liter podczas sortowania, sortowanie pliku według miesiąca, ignorowanie pustych miejsc w pliku i sortowanie losowe. Używając sortowania, możesz również sprawdzić, czy plik jest już posortowany, czy nie.
Jak korzystać z sortowania w systemie Linux
Chociaż sort zawiera kilka metod i flag, których można użyć, nadal jest łatwy do nauczenia.
Podstawowa składnia
Podstawowa składnia używania sortowania to:
sortuj nazwę pliku
...gdzie Nazwa pliku to bezwzględna lub względna ścieżka pliku tekstowego, który chcesz posortować.
Domyślnie sortowanie uporządkuje zawartość zgodnie z następującymi kryteriami:
- Wiersze zaczynające się od znaków numerycznych mają najwyższy priorytet.
- Polecenie posortuje wiersze alfabetycznie, po posortowaniu wierszy zaczynających się od liczb.
- Linie zaczynające się od małych liter poprzedzają linie zaczynające się tym samym znakiem wielkimi literami.
Rozważ plik tekstowy o nazwie plik tekstowy.txt zawierające następujące informacje:
Aby posortować plik przy użyciu domyślnej konfiguracji:
sortuj plik tekstowy.txt
Wynik:
Utwórz nowy plik wyjściowy
Polecenie sort nie modyfikuje zawartości pliku. Po prostu wysyła posortowaną zawartość na standardowe wyjście. Nie oznacza to jednak, że sortowanie nie może utworzyć nowego pliku. Możesz użyć -o flag, aby określić nazwę posortowanego pliku, a sortowanie automatycznie utworzy plik za Ciebie i doda zawartość.
sort -o nazwa_pliku posortowanego
...gdzie posortowany plik to nazwa pliku wyjściowego i Nazwa pliku to oryginalny plik, który wymaga sortowania.
Aby posortować plik tekstowy.txt i utwórz nowy plik wyjściowy dla treści:
sort -o posortowany.txt plik tekstowy.txt
Wynik:
Sortuj wiele plików
Aby posortować więcej niż jeden plik na raz, po prostu przekaż nazwy plików oddzielone znakiem Przestrzeń postać.
sortuj plik tekstowy.txt plik tekstowy2.txt
Wynik:
Zwróć uwagę, że sortowanie połączy dane wyjściowe plików i wyświetli je razem w terminalu.
Odwróć sortowanie pliku
Jeśli chcesz odwrócić układ treści, użyj -r flaga z domyślnym poleceniem. -r w poniższym poleceniu oznacza Odwrócić.
sort -r plik tekstowy.txt
Wynik:
Sortuj plik numerycznie
Aby posortować plik zawierający dane liczbowe, użyj przycisku -n flaga z poleceniem. Domyślnie sortowanie uporządkuje dane w kolejności rosnącej.
sort -n liczb.txt
Wynik:
Jeśli chcesz posortować w kolejności malejącej, odwróć układ, używając -r opcja wraz z -n flaga w poleceniu.
sort -rn liczby.txt
Wynik:
Ignoruj wielkość liter podczas sortowania
Domyślnie sortowanie uwzględnia wielkość liter w treści. Wiersze zaczynające się od małych liter poprzedzają wiersze zaczynające się od wielkiej litery tego samego znaku. Na przykład „on jest chłopcem” poprzedza „On jest chłopcem”.
Jeśli chcesz, aby sortowanie ignorowało wielkość liter, określ -fa albo --ignoruj-przypadek flaga w następujący sposób:
sort -f plik tekstowy.txt
sort --ignore-case textfile.txt
Wynik:
Sortuj plik na podstawie miesiąca
Używając -M flaga, możesz zmienić kolejność zawartości pliku na podstawie nazw miesięcy.
sort -M plik tekstowy2.txt
Wynik:
Ignoruj początkowe puste miejsca
Czasami plik, który chcesz posortować, może zawierać spacje lub tabulatory. Aby zignorować takie puste znaki, użyj -b flaga.
sort -b fileblanks.txt
Wynik:
Sortuj plik według kolumny
Jeśli masz plik tekstowy z danymi ułożonymi w osobnych kolumnach, możesz posortować plik według zawartości kolumny. Wystarczy podać numer kolumny wraz z -k flaga.
Rozważ plik tekstowy zawierający informacje o pliku z różnymi kolumnami. Aby posortować plik o nazwie output.txt zgodnie z ósmą kolumną:
sort -k8 -rn wyjście.txt
Wynik:
Sortowanie rur z innymi poleceniami
Możesz nawet użyć sortowania z innymi poleceniami Linuksa, aby zmodyfikować układ danych wyjściowych. Na przykład, aby posortować dane wyjściowe z polecenie ls zgodnie z rozmiarem plików:
ls-la | sortuj -k5 -rn
Wynik:
Sortuj plik losowo
Możesz użyć -R flaga, jeśli chcesz zmienić kolejność wierszy w pliku tekstowym. Rozważ plik plik tekstowy.txt:
sort -R plik tekstowy.txt
Wynik:
Sortuj numery wersji w pliku
Jeśli masz plik tekstowy zawierający informacje o wersji powiązanej z pakietem, możesz posortować jego zawartość za pomocą -V lub --wersja-sortuj flaga.
sort -V wersja.txt
sort --version-sort version.txt
Wynik:
Sprawdź, czy plik jest posortowany
-do flaga pomoże Ci zidentyfikować pliki, które są już posortowane zgodnie z określonymi opcjami. Jeśli zawartość pliku jest prawidłowo posortowana, sortowanie nie wyświetli żadnych danych wyjściowych.
Aby sprawdzić, czy plik plik tekstowy.txt jest posortowany:
sort -c plik tekstowy.txt
Teraz posortujmy plik i zapiszmy jego wynik w nowym pliku o nazwie posortowane.txt. Po wydaniu następującego polecenia:
sort -c posortowany.txt
Wynik:
Możesz również określić różne flagi, aby sprawdzić ułożenie pliku według określonych kryteriów. Na przykład, aby sprawdzić, czy plik liczby.txt jest posortowany w kolejności malejącej:
sort -c -rn liczby.txt
Zobaczysz dane wyjściowe z informacją, że plik nie jest prawidłowo posortowany. Posortujmy plik i sprawdźmy, czy nowy plik przeszedł test.
sort -o posortowane.txt -rn liczby.txt
sort -c -rn posortowany.txt
Wynik:
Sortuj plik i usuń duplikaty
Plik, z którym pracujesz, może zawierać zduplikowane dane. Chociaż możesz użyć unikalne polecenie aby usunąć takie informacje z pliku, sort może wykonać to zadanie za Ciebie. -u lub --wyjątkowy flaga jest tym, czego potrzebujesz.
Rozważ plik o nazwie duplikat.txt:
Aby posortować plik i usunąć powtarzające się dane:
sort -u duplikat.txt
Wynik:
Możesz to zobaczyć, gdy używasz -u flaga, sortowanie wyświetla tylko odrębne linie i rozmieszcza je zgodnie z określonymi kryteriami.
Praca z plikami tekstowymi w systemie Linux
Chociaż moc edytorów tekstu wiersza poleceń jest niezrównana, nadal możesz wybrać edytor graficzny, taki jak gedit, aby łatwo modyfikować zawartość pliku tekstowego. Jest to również lepszy wybór dla tych, którzy są nowicjuszami w Linuksie i nie mogą poradzić sobie z terminalem.
Najlepszym sposobem na rozpoczęcie od wiersza poleceń i ogólnie Linuksa jest ćwiczenie najpierw podstawowych poleceń. Po zapoznaniu się z podstawowymi narzędziami, stopniowe przechodzenie do bardziej złożonych poleceń jest prawdopodobnie najlepszym podejściem.
Ta prosta ściągawka pomoże Ci szybko zaznajomić się z terminalem wiersza poleceń systemu Linux.
Czytaj dalej
- Linux
- Zarządzanie plikami
- Linux
- Polecenia Linuksa

Deepesh to Junior Editor dla Linuksa w MUO. Od ponad 3 lat pisze treści informacyjne w internecie. W wolnym czasie lubi pisać, słuchać muzyki i grać na gitarze.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w e-mailu, który właśnie do Ciebie wysłaliśmy.