Sıralanacaq maddələr bir şəkildə ayrılmalıdır
Hər bir element bir şəkildə ayrılmış olduğu müddətdə, Linux mətn faylında olan məlumat sıralama əmri ilə sıralana bilər. Tez-tez, virgül ayrılmış məlumat üçün ayırıcı kimi istifadə olunur.
Sıralama üçün əsas qaydalar
Sıralama əmri, ədədi və əlifba sırası ilə sıralamaq üçün mətn faylında olan xətləri yenidən düzəldir. Sifariş əmri üçün standart qaydalar aşağıdakılardır:
- Bir ədədlə başlayan mətn bir məktubla başlayan mətndən əvvəl görünür; aşağı nömrələri ilk sırala.
- Daha əvvəl alfabeydə görünən bir məktub ilə başlayan mətn digər mətn girişlərinin ilk harfi əlifbanın sonrakı birində görünən bir məktubla başlayan mətndən əvvəl sıralanır.
- Mətn , eyni məktubun böyük və kiçik klik nümunələri ilə başlayan yerlərdə, ilk növbədə kiçik əmr nümunəsi sıralanır.
Mətn faylını çeşidləmə
Çizgiləri məhdudlaşdırılan bir Linux faylında sıralamaq üçün aşağıdakı sıralama əmrini istifadə edin:
$ sort -k2 test.txtikinci sütunda başlayan simvollara görə "test.txt" faylını sıralar (k2 ikinci sütuna aiddir). Giriş faylının məzmununu nəzərə alsaq:
1, Justin Timberlake, Title 545, Qiymət $ 7.30 2, Taylor Swift, Title 723, Qiymət $ 7.90 3, Mick Jagger, Sərvət 610, Qiymət $ 7.90 4, Lady Gaga, Başlıq 118, Qiymət $ 7.30 5, Johnny Cash, Mövzu 482, Qiyməti 6.50 $ 6, Elvis Presley, Title 335, Qiymət $ 7.30 7, John Lennon, Başlıq 271, Qiymət $ 7.90 8, Michael Jackson, Mövzu 373, Qiymət $ 5.50Bu nümunədə ikinci sütun ilk və son adları ehtiva etdiyindən, sıralanan nəticələr ikinci sütunda hər birinin ilk adının - Elvis, John, Johnny, Justin, Lady, Michael, Mick və Taylor aşağıda göstərildiyi kimi:
6, Elvis Presley, Title 335, Qiymət $ 6.30 7, John Lennon, Başlıq 271, Qiymət $ 7.90 5, Johnny Cash, Başlıq 482, Qiymət $ 6.50 1, Justin Timberlake, Başlıq 545, Qiymət $ 6.30 4, Lady Gaga, Başlıq 118, Qiymət $ 6.30 8, Michael Jackson, Mövzu 373, Qiymət $ 5.50 3, Mick Jagger, Sərvət 610, Qiymət $ 7.90 2, Taylor Swift, Title 723, Qiymət $ 7.90Dosyayı -k3 (sütun 3 başlayan satır içeriğini istifadə edərək - Başlıq nömrəsi sütunu istifadə edərək) ilə sıralarsanız, çıxış:
4, Lady Gaga, Başlıq 118, Qiymət $ 6.30 7, John Lennon, Başlıq 271, Qiymət $ 7.90 6, Elvis Presley, Başlıq 335, Qiymət $ 6.30 8, Michael Jackson, Mövzu 373, Qiymət $ 5.50 5, Johnny Cash, Mövzu 482, Qiymət $ 6.50 1, Justin Timberlake, Mövzu 545, Qiymət $ 6.30 3, Mick Jagger, Sərvət 610, Qiymət $ 7.90 2, Taylor Swift, Title 723, Qiymət $ 7.90və
$ sort -k4 test.txtqiymətə görə sıralanan bir siyahısını istehsal edir:
8, Michael Jackson, Mövzu 373, Qiymət $ 5.50 1, Justin Timberlake, Mövzu 545, Qiymət $ 6.30 4, Lady Gaga, Mövzu 118, Qiymət $ 6.30 6, Elvis Presley, Mövzu 335, Qiymət $ 6.30 5, Johnny Cash, Mövzu 482, Qiymət $ 6.50 2, Taylor Swift, Title 723, Qiymət $ 7.90 3, Mick Jagger, Sərvət 610, Qiymət $ 7.90 7, John Lennon, Başlıq 271, Qiymət $ 7.90Bir növbəni ters çevirmək
-r seçimi çeşidlənmə əvəz edir. Məsələn, yuxarıdakı nəticələri istifadə edin:
$ sort -k4 -r test.txtverim:
7, John Lennon, Başlıq 271, Qiymət $ 7.90 3, Mick Jagger, Sərvət 610, Qiymət $ 7.90 2, Taylor Swift, Title 723, Qiymət $ 7.90 5, Johnny Cash, Sərvət 482, Qiymət 6.50 $, 6, Elvis Presley, Mövzu 335, Qiymət $ 6.30 4, Lady Gaga, Başlıq 118, Qiymət $ 6.30 1, Justin Timberlake, Mövzu 545, Qiymət $ 6.30 8, Michael Jackson, Mövzu 373, Qiymət $ 5.50Sortlaşdırılan faylın saxlanması
Bir faylın sıralanması onu saxlamır. Sıralanan siyahıdan bir faylda saxlamaq üçün yönlendirme operatorunu istifadə edirsiniz:
sort -k4 -r test.txt> test_new.txtburada "test_new.txt" yeni fayldır.
Bir Çıxış Çıxışının Sıralanması
Sifariş əmrini boru operatoru kimi bir axının çıxışına da tətbiq edə bilərsiniz:
$ ls -al | sort -r -n-k5Böyük fayllardan başlayaraq, fayl ölçüsü ilə ls əmri ilə yaradılan fayl siyahısının çıxışını sıralar. -n operatoru, əlifbanın əvəzinə sayısal sıralamasını müəyyənləşdirir.