28 puan yazan xguru 2021-11-15 | 1 yorum | WhatsApp'ta paylaş
  • Yalnızca 1 satır yazdırma

→ sed -n '10p' file.txt

    1. satır hariç tüm satırlarda karakter değiştirme

→ sed '5!/s/foo/bar/' file.txt

  • Belirli bir karakterle başlayan tüm satırlarda düzenli ifade değiştirme

→ sed '/^hello/ s/h/H/' file.txt

  • Yalnızca 5. satırdan son satıra kadar değiştirme

→ sed '5,$ s/foo/bar/' file.txt

  • Boş dosyayı silme

→ sed '/^$/d' file

  • İki düzenli ifade arasındaki tüm satırları yazdırma

→ sed -nE '/^foo/,/^bar/p' file.txt

  • / içeren metni daha kolay bulmak için özel ayraç kullanma

→ sed 's_/bin/bash_/bin/sh_' file.txt

  • Boşlukla ayrılmış yinelenen dizeleri kaldırma (üç kez yinelenenler hariç)

→ sed -E 's_([a-zA-Z0-9_]+) \1_\1_ig' f1

  • Belirli bir kalıbı bulup değiştirdikten sonra yalnızca değiştirilenleri başka bir dosyaya kaydetme

→ sed 's_foo_bar_w replaced.txt' file.txt

  • Aynı anda birden fazla değiştirme

→ sed -e 's_foo_bar_' -e 's_hello_HELLO_' file.txt

  • İki anahtar sözcük arasındaki tüm yorumları kaldırıp boş satır ekleme

→ sed -E '/start/,/end/ s/#.*//' file.txt

  • # ile başlayan tüm yorumları silme

→ sed -E '/^#/d' f1

  • Belirli bir kalıp görünene kadar yazdırma

→ sed '/start/q' file.txt

  • Belirli bir satırdan sonra dosya ekleme

→ sed '5 r newfile.txt' file.txt

  • Belirli bir düzenli ifade eşleşmesinden sonraki satıra metin ekleme

→ sed '/foo/a\AFTER FOO' file.txt

  • Belirli bir düzenli ifadeyle eşleşen satırı değiştirme

→ sed '/foo/c\FOO IS CHANGED' file.txt

  • # ile başlayan tüm yorumları başka bir dosyaya kaydetme

→ sed -E '/^#/w comments.txt' file.txt

  • Her ikinci satırı yazdırma (bir satır atlayıp bir satır, 3/4 vb. olarak değiştirilebilir)

→ sed -n '1~2p' file.txt

  • Dosyayı doğrudan düzenlerken yedek oluşturma

→ sed -i.bak 's/hello/HELLO/' file.txt

  • Düzenli ifade eşleşmesinden sonra iki boş satır ekleme

→ sed -E '/^#/G G' file.txt

1 yorum

 
tribela 2021-11-15

Slash dışında başka karakterlerin de ayırıcı olarak kullanılabildiğini bilmek gerçekten olmazsa olmaz bir ipucu.

Çünkü apt depo URL’sini değiştirirken olduğu gibi, slash içeren durumlarla epey sık karşılaşıyorsunuz