Giriş
Bu kılavuzda, verileri ayrılmış dosyalarda ve diğer komutların çıkışından nasıl sıralayacağınızı göstereceğim.
Bu görevi gerçekleştirmek için kullandığınız komutun "sort" olarak adlandırıldığını öğrenmeye şaşıracaksınız. Bu makalede sıralama komutunun tüm önemli anahtarları sağlanacaktır.
Örnek veri
Bir dosyadaki veriler, bir şekilde sınırlandırılmış olduğu sürece sıralanabilir.
Örneğin, geçtiğimiz yıl İskoçya Premier Ligi final lig tablosuna gidelim ve verileri "spl" adlı bir dosyada saklayalım.
Bir veri dosyasını aşağıdaki gibi bir kulüp ve her bir satırda virgülle ayırarak o kulübe ait verileri oluşturabilirsiniz.
Takım | Gol attı | Karşı Karşı Goller | makas |
---|---|---|---|
Kelt | 93 | 31 | 86 |
Aberdeen | 62 | 48 | 71 |
Kalpler | 59 | 40 | 65 |
St Johnstone | 58 | 55 | 56 |
Motherwell | 47 | 63 | 50 |
Ross County | 55 | 61 | 48 |
Inverness | 54 | 48 | 52 |
Dundee | 53 | 57 | 48 |
Partick | 41 | 50 | 46 |
Hamilton | 42 | 63 | 43 |
Kilmarnock | 41 | 64 | 36 |
Dundee United | 45 | 70 | 28 |
Verileri Dosyalara Nasıl Sıralamalı
Bu tablodan, Celtic'in ligin kazanıldığını ve Dundee United'ın en son geldiğini görebilirsiniz. Bir Dundee United hayranı iseniz kendinizi daha iyi hissettirmek isteyebilirsiniz ve bunu gol attırarak sıralayabilirsiniz.
Bunu yapmak için aşağıdaki komutu çalıştırın:
sort -k2 -t, spl
Bu sefer sipariş şöyle olacaktı:
- Partick
- Kilmarnock
- Hamilton
- Dundee United
- Motherwell
- Dundee
- Inverness
- Ross County
- St Johnstone
- Kalpler
- Aberdeen
- Kelt
Sonuçların bu sıradaki nedeni, sütun 2'nin gol attı sütunudur ve sıralama en düşükten en yükseğe doğrudur.
-k anahtarı, sıralamak için sütunu seçmenizi sağlar ve -t anahtarı sınırlayıcıyı seçmenize izin verir.
Kendilerini gerçekten mutlu etmek için Dundee United taraftarları aşağıdaki komutu kullanarak 4. sütuna göre sıralama yapabilir:
sıralama -k4 -t, spl
Şimdi Dundee United üstte ve Celtic altta.
Tabii ki, bu hem Celtic hem de Dundee hayranlarını gerçekten çok mutsuz eder. Bir şeyleri doğru koymak için aşağıdaki anahtarı kullanarak ters sıralayabilirsiniz:
-k4 -t, -r spl sırala
Oldukça tuhaf bir anahtar, rastgele sıralama yapabilmenizi sağlar ki bu da sadece veri satırlarını karıştırır.
Bunu aşağıdaki komutu kullanarak yapabilirsiniz:
-k4 -t, -R spl sırala
-r ve -R anahtarınızı karıştırdıysanız, bu durum gerçek sorunlara neden olabilir.
Sıralama komutu da tarihleri ay düzenine göre sıralayabilir. Aşağıdaki tabloya bakmak için:
Ay | Kullanılan Veriler |
---|---|
Ocak | 4G |
Şubat | 3000K |
Mart | 6000K |
Nisan | 100M |
Mayıs ayı | 5000M |
Haziran | 200K |
Temmuz | 4000K |
Ağustos | 2500K |
Eylül | 3000K |
Ekim | 1000K |
Kasım | 3G |
Aralık | 2G |
Yukarıdaki tablo, yılın ayı ve bir mobil cihazda kullanılan veri miktarını temsil eder.
Tarihleri aşağıdaki komutu kullanarak alfabetik olarak sıralayabilirsiniz:
-k1 -t, datausedlist sırala
Aşağıdaki komutu kullanarak ay olarak da sıralayabilirsiniz:
-k1 -t, -M veri listelerini sırala
Şimdilerde yukarıdaki tablo aylar içinde zaten gösteriyor, ancak liste rastgele doldurulduysa, bu onları sıralamak için basit bir yol olurdu.
İkinci sütuna baktığımızda, tüm değerlerin insan tarafından okunabilir bir biçimde görülebildiğini göreceksiniz. Bu, sıralamanın kolay olması gibi görünmüyor ancak sıralama komutu aşağıdaki komutu kullanarak kullanılan veri sütununu sıralayabilir:
-k2 -t, -h datausedlist sırala
Diğer Komutlardan Gelen Verileri Nasıl Sıralamak
Verileri dosyalara ayırmak yararlı olsa da, sort komutu ayrıca çıkışı diğer komutlardan ayırmak için de kullanılabilir:
Örneğin ls komutuna bakın :
ls -lt
Yukarıdaki komut, her dosyayı sütunlarda görüntülenen aşağıdaki alanlara sahip bir veri satırı olarak döndürür:
- izinler
- düğüm sayısı
- Kullanıcı adı
- grup ismi
- boyut
- son erişim tarihi
- dosya adı
Aşağıdaki komutu çalıştırarak listeyi dosya boyutuna göre sıralayabilirsiniz:
ls -lt | sıralama -k5
Sonuçları ters sırada almak için aşağıdaki komutu kullanırsınız:
ls -lt | sıralama -k5 -r
Sıralama komutu, sisteminizde çalışan işlemleri listeleyen ps komutuyla birlikte de kullanılabilir.
Örneğin, sisteminizde aşağıdaki ps komutunu çalıştırın:
ps -eF
Yukarıdaki komut, sisteminizde şu anda çalışan işlemler hakkında birçok bilgi döndürür.
Bu sütunlardan biri boyutudur ve hangi süreçlerin en büyük olduğunu görmek isteyebilirsiniz.
Bu verileri boyuta göre sıralamak için aşağıdaki komutu kullanırsınız:
ps -eF | sıralama -k5
özet
Sıralama komutuna pek bir şey yok, ancak özellikle komutun kendi sıralama anahtarları bulunmadığında, diğer komutlardan çıktıyı anlamlı bir sıraya ayırırken çok hızlı bir şekilde kullanılabilir.
Daha fazla bilgi için sıralama komutunun manuel sayfalarını okuyun.