Pardus Linux sort Komutu
Linux sistemlerinde kullanılan sort komutu; metin dosyalarındaki satırları belirli kurallara göre sıralamak için kullanılır. Özellikle log analizi, veri işleme, raporlama ve terminal çıktılarının düzenlenmesi gibi işlemlerde çok önemlidir.
GNU Core Utilities içerisindeki temel araçlardan biridir ve Pardus sistemlerinde varsayılan olarak bulunur.
Temel Kullanım
Sözdizimi
sort [seçenekler] dosya
Örnek:
sort ogrenciler.txt
Dosya içeriği:
Zeynep
Ali
Mehmet
Ayşe
Çıktı:
Ali
Ayşe
Mehmet
Zeynep
sort varsayılan olarak alfabetik sıralama yapar.
Örnek Veri Dosyası Oluşturma
nano notlar.txt
İçerik:
Ali 75
Ayşe 90
Mehmet 60
Zeynep 100
Can 85
Sayısal Sıralama (-n)
Varsayılan sıralama alfabetiktir. Sayıları doğru sıralamak için -n kullanılır.
Hatalı kullanım
sort sayilar.txt
Dosya:
1
20
3
100
Çıktı:
1
100
20
3
Doğru kullanım
sort -n sayilar.txt
Çıktı:
1
3
20
100
Ters Sıralama (-r)
Büyükten küçüğe veya Z’den A’ya sıralama yapar.
sort -r isimler.txt
Sayısal ters sıralama:
sort -nr sayilar.txt
Benzersiz Satırları Gösterme (-u)
Tekrarlanan satırları kaldırır.
Dosya:
Ali
Ali
Ayşe
Mehmet
Ayşe
Komut:
sort -u liste.txt
Çıktı:
Ali
Ayşe
Mehmet
Belirli Kolona Göre Sıralama (-k)
Çok sütunlu verilerde kullanılır.
Dosya:
Ali 75
Ayşe 90
Mehmet 60
Can 85
2. sütuna göre sıralama
sort -k2 -n notlar.txt
Çıktı:
Mehmet 60
Ali 75
Can 85
Ayşe 90
Ayraç Belirtme (-t)
Virgül, iki nokta veya başka karakterlerle ayrılmış verilerde kullanılır.
Dosya:
Ali,75
Ayşe,90
Can,85
Komut:
sort -t ',' -k2 -n notlar.csv
Büyük/Küçük Harf Duyarsız Sıralama (-f)
sort -f dosya.txt
Örnek:
ali
Ayşe
Mehmet
can
Ayların Sıralanması (-M)
Ay isimlerini takvim sırasına göre sıralar.
Dosya:
Jan
Mar
Feb
Apr
Komut:
sort -M aylar.txt
Çıktı:
Jan
Feb
Mar
Apr
İnsan Okunabilir Boyutlara Göre Sıralama (-h)
Disk boyutları gibi verilerde kullanılır.
Dosya:
1K
2M
500K
1G
Komut:
sort -h boyut.txt
Boşlukları Yok Sayma (-b)
Satır başındaki boşlukları dikkate almaz.
sort -b dosya.txt
Çıktıyı Dosyaya Yazma (-o)
sort isimler.txt -o sirali.txt
Birden Fazla Seçeneği Birlikte Kullanma
sort -k2 -nr notlar.txt
Açıklama:
-k2→ 2. sütuna göre sırala-n→ sayısal sırala-r→ ters sırala
Pipe (|) ile Kullanımı
Linux’ta sort genellikle diğer komutlarla birlikte kullanılır.
Kullanıcı listesini sıralama
cat /etc/passwd | sort
En büyük dosyaları listeleme
du -h | sort -h
Süreçleri RAM kullanımına göre sıralama
ps aux | sort -k4 -nr
uniq ile Birlikte Kullanımı
En sık kullanılan kombinasyonlardan biridir.
Dosya:
Ali
Ayşe
Ali
Can
Ali
Ayşe
Komut:
sort isimler.txt | uniq
Tekrar sayıları:
sort isimler.txt | uniq -c
Çıktı:
3 Ali
2 Ayşe
1 Can
Log Analizinde Kullanımı
IP adreslerini sıralama
cat access.log | awk '{print $1}' | sort
En çok geçen IP adresleri
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr
Bu yöntem sistem yöneticileri ve siber güvenlik uzmanları tarafından sık kullanılır.
Büyük Dosyalarda Performans
sort büyük dosyalarda geçici disk alanı kullanabilir.
Bellek miktarı belirtme
sort -S 1G buyukdosya.txt
Geçici dizin belirtme
sort -T /tmp buyukdosya.txt
UTF-8 ve Türkçe Karakter Sorunları
Türkçe karakterlerin doğru sıralanması için yerel ayar önemlidir.
export LC_ALL=tr_TR.UTF-8
sort dosya.txt
En Yararlı sort Parametreleri Tablosu
| Parametre | Açıklama |
|---|---|
-n | Sayısal sıralama |
-r | Ters sıralama |
-u | Tekrarlı satırları kaldır |
-k | Kolona göre sırala |
-t | Ayraç belirt |
-f | Büyük/küçük harf duyarsız |
-M | Ay sıralaması |
-h | İnsan okunabilir boyut |
-o | Çıktıyı dosyaya yaz |
-b | Baştaki boşlukları yok say |
Gerçek Hayat Kullanım Senaryoları
Öğrenci notlarını sıralama
sort -k2 -nr notlar.txt
En büyük klasörleri bulma
du -h | sort -hr
Hataları sıralama
grep ERROR sistem.log | sort
En çok kullanılan komutlar
history | awk '{print $2}' | sort | uniq -c | sort -nr
Sık Yapılan Hatalar
Sayısal veride -n kullanmamak
Yanlış:
sort sayilar.txt
Doğru:
sort -n sayilar.txt
CSV dosyalarında -t kullanmamak
Yanlış:
sort -k2 veriler.csv
Doğru:
sort -t ',' -k2 veriler.csv
Sonuç
sort komutu Linux sistem yönetimi, veri işleme, log analizi ve günlük terminal kullanımında vazgeçilmez araçlardan biridir. Özellikle grep, awk, uniq, cut, du ve ps gibi komutlarla birlikte kullanıldığında çok güçlü hale gelir.
Pardus kullanıcıları için sort komutunu iyi öğrenmek; terminal hakimiyeti, sistem yönetimi ve siber güvenlik çalışmalarında büyük avantaj sağlar.
Pardus ve diğer Debian tabanlı Linux dağıtımlarında sort komutu, metin dosyalarındaki satırları alfabetik, sayısal veya belirli kriterlere göre düzenlemek için kullanılan temel ve oldukça güçlü bir araçtır.
Aşağıda, sort komutunun temel kullanımından ileri düzey parametrelerine kadar uzanan kapsamlı bir eğitim rehberi yer almaktadır.
1. Temel Kullanım: Alfabetik Sıralama
Herhangi bir parametre eklemeden sort komutunu kullandığınızda, çıktı varsayılan olarak A'dan Z'ye (alfabetik) sıralanır.
Not:
sortkomutu orijinal dosyayı değiştirmez, sıralanmış halini sadece ekrana yansıtır.
sort dosya_adi.txt
2. En Sık Kullanılan Parametreler
Sıralama işlemini özelleştirmek için aşağıdaki anahtarları kullanabilirsiniz:
| Parametre | Açıklama |
-r | Tersine sıralama yapar (Z'den A'ya). |
-n | Sayısal sıralama yapar (1, 2, 10 şeklinde; varsayılan modda 10, 2'den önce gelir). |
-u | Benzersiz (Unique) satırları gösterir; yinelenenleri siler. |
-o | Çıktıyı bir dosyaya kaydeder (sort dosya -o yeni_dosya). |
-k | Belirli bir sütuna (kolona) göre sıralama yapar. |
-t | Sütun ayırıcıyı (delimiter) belirler (örneğin virgül için -t ','). |
3. Sayısal Sıralama (-n)
Metin tabanlı sıralamada "10" sayısı "2"den önce gelir çünkü ilk karakter olan "1", "2"den küçüktür. Sayıları gerçek değerine göre sıralamak için -n kullanılır.
sort -n sayilar.txt
4. Belirli Sütunlara Göre Sıralama (-k)
Özellikle tablo halindeki verilerde (örneğin /etc/passwd dosyası veya bir CSV dosyası) belirli bir sütuna göre sıralama yapmak hayati önem taşır.
Örnek: Dosyanın 2. sütununa göre sıralama yapmak:
Bash:sort -k 2 liste.txtÖrnek: Virgülle ayrılmış bir dosyada 3. sütunu sayısal olarak sıralama:
sort -t ',' -k 3 -n veriler.csv
## 5. Uygulamalı Örnekler ve İpuçları
### Yinelenen Satırlardan Kurtulma
Bir dosyadaki mükerrer kayıtları temizleyip sıralı bir liste almak için:
sort -u isimler.txt
Çıktıyı Dosyaya Yazdırma
Sıralanmış veriyi doğrudan orijinal dosyanın üzerine yazmak veya yeni bir dosyaya aktarmak için -o (output) kullanılır:
sort -r liste.txt -o sirali_liste.txt
Büyük/Küçük Harf Duyarlılığını Kapatma (-f)
Linux varsayılan olarak büyük harfleri küçük harflerden önce sıralar. Bunu görmezden gelmek için:
:
sort -f dosya.txt
6. Pipe (|) ile Birlikte Kullanım
sort komutu genellikle diğer Linux komutlarıyla (ls, cat, du, ps) birlikte boru (pipe) operatörüyle kullanılır.
Dizindeki dosyaları boyutuna göre sıralama:
Bash:du -h | sort -h(Buradaki
-hparametresi, "Human Readable" yani KB, MB gibi birimleri anlamlandırarak sıralar.)
Özet Tavsiye
Pardus terminalinde çalışırken karmaşık verileri analiz etmek istiyorsanız, sort komutunu grep (filtreleme) ve uniq (tekrarları yönetme) komutlarıyla birleştirerek çok güçlü "tek satırlık" komutlar oluşturabilirsiniz.
sort hakkında daha fazla detay öğrenmek isterseniz terminale man sort yazarak resmi kılavuz sayfasına göz atabilirsiniz.
sort komutu, ilk bakışta basit bir metin düzenleme aracı gibi görünse de siber güvenlik uzmanları, sistem yöneticileri ve sızma testi uzmanları (pentesters) için "İsviçre Çakısı" niteliğinde kritik bir araçtır.
Siber güvenlikte verinin %90'ı metin tabanlı loglardan, ağ trafiği dökümlerinden ve kelime listelerinden oluşur. Bir analistin milyonlarca satırlık bir veri yığını içindeki "anomalileri" veya "tehditleri" bulabilmesi için bu veriyi organize etmesi gerekir. İşte sort komutu bu noktada devreye girer.
Aşağıda sort komutunun siber güvenlik alanındaki temel kullanım senaryoları ve önemi yer almaktadır:
1. Olay Müdahalesi (Incident Response) ve Log Analizi
Siber saldırıların tespiti genellikle sunucu loglarının (örneğin Apache/Nginx erişim logları veya SSH kimlik doğrulama logları) incelenmesiyle yapılır. sort, özellikle uniq (tekrarları bulma/sayma) komutuyla birleştiğinde bir tehdit avcısının en büyük yardımcısıdır.
Brute-Force (Kaba Kuvvet) Saldırılarını Tespit Etme:
Bir sunucuya en çok hatalı giriş yapmayı deneyen IP adreslerini bulmak için loglardaki IP'ler ayıklanır, sıralanır ve sayılır.
Bash:cat /var/log/auth.log | grep "Failed password" | awk '{print $11}' | sort | uniq -c | sort -nr | head -n 10Bu komut zincirinin sonunda yer alan
sort -nr, en çok saldırı yapan 10 IP adresini en yüksekten en düşüğe (sayısal ve ters olarak) sıralar.
2. Parola Kırma (Password Cracking) Operasyonları
Sızma testlerinde zayıf parolaları tespit etmek için kullanılan Hashcat veya John the Ripper gibi araçlar, devasa "Wordlist" (kelime listesi) dosyalarına ihtiyaç duyar.
Wordlist Optimizasyonu (
sort -u):Farklı kaynaklardan toplanan milyarlarca parolalık listelerde aynı parolalar defalarca geçebilir. Bu, parola kırma süresini gereksiz yere uzatır. Mükerrer kayıtları silmek ve listeyi optimize etmek için kullanılır:
Bash:sort -u ham_parolalar.txt -o temiz_wordlist.txt
3. Tehdit İstihbaratı (Threat Intelligence) ve IoC Yönetimi
Güvenlik analistleri sürekli olarak zararlı IP adresleri, oltalama (phishing) domainleri veya zararlı yazılım hash'leri (IoC - Zafiyet Göstergeleri) içeren listeler alırlar.
Listeleri Birleştirme ve Temizleme:
Farklı istihbarat kaynaklarından gelen IP listelerini birleştirip, benzersiz (unique) bir karaliste (blacklist) oluşturmak Firewall veya SIEM kuralları yazmadan önceki ilk adımdır.
4. Ağ Trafiği ve "Top Talkers" Analizi
Ağ üzerinde olağandışı bir veri sızıntısı (Data Exfiltration) veya bir DDoS saldırısı varsa, ağı en çok meşgul eden IP adreslerini veya portları (Top Talkers) bulmak gerekir.
Ağ analiz araçlarının (örneğin tshark veya tcpdump) çıktıları, bant genişliğini en çok kullanan kaynağı tespit etmek için sort -n (sayısal sıralama) ile düzenlenir.
Özetle Siber Güvenlikteki Rolü: "Kaostan Anlam Çıkarmak"
Siber güvenlikte zaman, en değerli kaynaktır. Bir saldırı anında "Ne oldu?" ve "Saldırgan kim?" sorularına saniyeler içinde cevap vermek gerekir. sort komutu, grep, awk ve uniq gibi diğer Linux komutlarıyla oluşturduğu ekosistem sayesinde, gigabaytlarca anlamsız veriyi saniyeler içinde okunabilir, analiz edilebilir ve aksiyon alınabilir bir istihbarata dönüştürür.
Pardus ve diğer Linux sistemlerinde kullanılan sort komutu, yalnızca veri sıralama aracı değildir. Siber güvenlik uzmanları, sistem yöneticileri, SOC analistleri ve adli bilişim uzmanları için oldukça önemli yardımcı araçlardan biridir.
Özellikle:
Log analizi
Olay müdahalesi
Tehdit avcılığı (Threat Hunting)
SIEM veri hazırlığı
Ağ trafiği inceleme
Zararlı yazılım analizi
Kullanıcı davranışı inceleme
gibi alanlarda sıkça kullanılır.
Siber Güvenlikte Neden Önemlidir?
Siber güvenlikte çok büyük miktarda veri oluşur:
Sistem logları
Firewall kayıtları
Web sunucu erişim kayıtları
DNS sorguları
IP adresleri
Kullanıcı hareketleri
Hata kayıtları
Bu veriler genellikle dağınık ve karışıktır.sort komutu verileri düzenleyerek analiz edilebilir hale getirir.
1. Log Analizinde Kullanımı
Log dosyaları siber güvenlik çalışmalarının temelidir.
Örnek Apache erişim logu:
192.168.1.10
10.0.0.5
192.168.1.10
172.16.0.3
IP adreslerini sıralama
cat access.log | sort
Bu işlem:
Aynı IP’leri gruplayabilir
Şüpheli hareketleri daha görünür hale getirir
Sonraki analizleri kolaylaştırır
2. En Çok İstek Yapan IP’yi Bulma
DDoS veya brute force saldırılarında belirli IP’ler çok fazla istek gönderir.
Analiz örneği
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr
Ne yapıyor?
| Komut | Görev |
|---|---|
awk | IP adreslerini çıkarır |
sort | Aynı IP’leri yan yana getirir |
uniq -c | Tekrar sayılarını hesaplar |
sort -nr | En yüksek sayıyı üste getirir |
Çıktı:
450 185.220.x.x
320 45.12.x.x
120 192.168.x.x
Bu yöntem saldırı tespitinde çok kullanılır.
3. Brute Force Saldırılarını Tespit Etme
SSH başarısız girişlerini inceleme:
grep "Failed password" auth.log | awk '{print $11}' | sort | uniq -c | sort -nr
Bu komut:
Başarısız giriş yapan IP’leri bulur
Kaç kez deneme yaptığını gösterir
Saldırgan IP’leri belirlemeye yardımcı olur
4. Zararlı Yazılım Analizinde Kullanımı
strings komutuyla çıkarılan veriler sıralanabilir.
Örnek:
strings malware.exe | sort
Amaç:
URL’leri bulmak
Komutları görmek
Şüpheli alan adlarını incelemek
API çağrılarını düzenlemek
5. SIEM ve Güvenlik Verisi Hazırlama
Splunk veya ELK Stack gibi sistemlere veri göndermeden önce:
Tekrarlı kayıtlar temizlenebilir
Veriler sıralanabilir
Analiz kolaylaştırılabilir
Örnek:
sort -u logs.txt
6. IOC (Indicator of Compromise) Analizi
IOC listelerinde:
Zararlı IP adresleri
Domainler
Hash değerleri
Zararlı URL’ler
bulunur.
Tekrarlı IOC temizleme
sort ioc.txt | uniq
Bu işlem tehdit istihbaratında yaygın kullanılır.
7. Ağ Trafiği İncelemesi
Wireshark veya tcpdump çıktıları sıralanabilir.
Örnek:
cat trafik.txt | sort
En çok iletişim kuran IP:
awk '{print $3}' trafik.txt | sort | uniq -c | sort -nr
8. Adli Bilişimde Kullanımı
Digital Forensics çalışmalarında:
Dosya listeleri
Kullanıcı hareketleri
Zaman damgaları
Hash listeleri
sıralanarak analiz edilir.
Örnek hash karşılaştırması:
sort hashes.txt
9. Güvenlik Otomasyonlarında Kullanımı
Bash scriptlerinde sık kullanılır.
Örnek:
cat ips.txt | sort | uniq > temiz_ip.txt
Bu yöntem:
Firewall kurallarında
IOC filtrelemede
Güvenlik raporlarında
Otomatik analizlerde
çok yaygındır.
10. Büyük Güvenlik Verilerinde Performans Avantajı
Siber güvenlik sistemleri bazen milyonlarca satır log üretir.
sort:
Büyük dosyaları işleyebilir
Disk tabanlı çalışabilir
Bellek optimizasyonu sunar
Örnek:
sort -S 2G firewall.log
Siber Güvenlikte sort ile Kullanılan Komutlar
| Komut | Amaç |
|---|---|
grep | Filtreleme |
awk | Kolon çıkarma |
uniq | Tekrar sayma |
cut | Alan ayırma |
sed | Metin düzenleme |
strings | Zararlı analiz |
tcpdump | Ağ inceleme |
journalctl | Sistem logları |
Gerçek Hayat Senaryosu
Bir Web Sunucusuna Saldırı Tespiti
Analist aşağıdaki komutu çalıştırır:
cat access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head
Çıktı:
15000 45.x.x.x
1200 192.x.x.x
350 10.x.x.x
İlk IP olağan dışı yüksek trafik üretmektedir.
Bu durum:
DDoS
Bot saldırısı
Tarama faaliyeti
Brute force denemesi
olabileceğini gösterebilir.
Neden Siber Güvenlik Uzmanları sort Öğrenmeli?
Çünkü:
Linux tabanlı sistemlerde standarttır
Çok hızlıdır
Otomasyon dostudur
Büyük loglarda etkilidir
SIEM öncesi analiz sağlar
Bash scriptlerinde yaygındır
Tehdit avcılığında temel araçtır
Sonuç
sort komutu ilk bakışta basit görünse de siber güvenlik dünyasında veri düzenleme ve analiz süreçlerinin temel taşlarından biridir.
Özellikle:
Log analizi
Olay müdahalesi
Tehdit istihbaratı
Ağ güvenliği
Adli bilişim
SIEM hazırlığı
alanlarında çok önemli rol oynar.
Pardus kullanan bir siber güvenlik uzmanı için sort, grep, awk ve uniq komutlarını iyi bilmek büyük avantaj sağlar.
Yorumlar