awk Temelleri (Detaylı Anlatım ve Uygulama Teknikleri)

awk, metin işleme ve raporlama için kullanılan güçlü bir araçtır. Özellikle sütun bazlı veri işleme, log analizi ve format dönüştürme için kullanılır.


awk Temel Kullanım​

bash
# Sütunları yazdır
awk '{print $1}' dosya.txt
awk '{print $1, $3}' dosya.txt

# Tüm satırı yazdır
awk '{print $0}' dosya.txt

# Belirli bir pattern'e göre
awk '/aranan/ {print $2}' dosya.txt

# Alan ayırıcı belirleme
awk -F, '{print $1}' dosya.csv

# Başlık ekleme
awk 'BEGIN {print "Column1 Column2"} {print $1, $2}' dosya.txt

awk Gelişmiş Kullanım​

bash
# Koşullu işlem
awk '$3 > 100 {print $1, $3}' dosya.txt

# Matematiksel işlem
awk '{sum += $2} END {print sum}' dosya.txt

# Sayısal sütun formatlama
awk '{printf "%.2f\n", $2}' dosya.txt

# Satır numarasıyla
awk '{print NR, $0}' dosya.txt

# Birden fazla ayırıcı
awk -F'[,;:]' '{print $1, $2}' dosya.txt

Pratik Kullanım Senaryoları​

1. Log Analizi​

bash
# Toplam istek sayısı
awk '{print $1}' access.log | wc -l

# Benzersiz IP'ler
awk '{print $1}' access.log | sort | uniq -c | sort -nr

# En çok istek yapan IP'ler
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head -10

# 404 hataları
awk '/404/ {print $1, $7}' access.log

2. CSV İşleme​

bash
# 2. sütunu büyük harf yap
awk -F, '{print toupper($2)}' dosya.csv

# 3. sütuna göre sırala
awk -F, '{print $0}' dosya.csv | sort -t, -k3 -n

# Toplam hesapla
awk -F, '{sum += $3} END {print "Total:", sum}' dosya.csv

3. Metin Dönüştürme​

bash
# Sütunları yeniden düzenle
awk '{print $3, $1, $2}' dosya.txt

# Büyük/küçük harf
awk '{print toupper($0)}' dosya.txt
awk '{print tolower($0)}' dosya.txt

🔒 Bu içeriği görmek için giriş yapın

 
Yanıt yazmak için giriş yapmalısınız
Forum özelliklerini kullanmak ve Level 2 üyelik satın almak için hesabınıza giriş yapın.
133,661Konular
3,288,229Mesajlar
324,331Kullanıcılar
Üst Alt