Tartışma

Linux sed İleri Seviye Rehber

Başlatan IronPacket · 13 Ağu 2026 13:26 · 7 Görüntülenme · 0 Yanıtlar
Konuyu Açan #0
Sed (Stream Editor), Linux ve Unix sistemlerinde metin dosyalarını düzenlemek için kullanılan güçlü bir araçtır. Temel kullanımı oldukça basit olmakla birlikte, ileri seviye özellikleri ile karmaşık metin işleme görevlerini de hızlı bir şekilde gerçekleştirebilir. Bu yazıda, sed'in daha az bilinen bazı özellikleri ve bunların nasıl kullanılacağı üzerinde duracağız.

Sed'in en yaygın kullanımlarından biri metin değiştirme işlemidir. Örneğin, bir dosyadaki belirli bir kelimeyi başka bir kelime ile değiştirmek için şu komut kullanılabilir:

CODE
1sed 's/eski_kelime/yeni_kelime/g' dosya.txt


Bu komut, "dosya.txt" içerisindeki "eski_kelime" kelimesinin tüm görünümlerini "yeni_kelime" ile değiştirir. Ancak, sed'in yetenekleri bununla sınırlı değildir.

  • Düzenli İfadeler: Sed, düzenli ifadeleri destekler. Bu sayede, daha karmaşık eşleşmeler yapabiliriz. Örneğin, bir dosyada "abc" ile başlayan ve ardından bir veya daha fazla sayı içeren satırları bulmak için şu komutu kullanabiliriz:
    CODE
    1sed -n '/^abc[0-9]\+/p' dosya.txt


  • Çoklu Komutlar: Sed komutları birden fazla işlem gerçekleştirmek için birden fazla komutu tek bir sed ifadesinde bir araya getirebiliriz. Örneğin, bir dosyada "foo" kelimesini "bar" ile değiştirirken aynı zamanda "baz" kelimesini de silmek için:
    CODE
    1sed -e 's/foo/bar/g' -e '/baz/d' dosya.txt


  • Geri Alma İşlemleri: Sed, metin üzerinde geri alma işlemleri yapabilir. Geçici olarak değiştirilen metni geri almak için, sed'in "h" ve "g" komutlarını kullanabiliriz. Örneğin:
    CODE
    1sed 'h;s/foo/bar/g;g' dosya.txt

    Bu komut, "foo" kelimesini "bar" ile değiştirir ve orijinal metni geri döndürür.

Sonuç olarak, sed, metin işleme alanında son derece güçlü bir araçtır. İleri seviye kullanımını öğrenmek, kullanıcıların metin dosyalarını daha etkili ve verimli bir şekilde yönetmelerini sağlar. Sed ile ilgili daha fazla bilgi edinmek veya belirli bir kullanım durumu hakkında sorular sormak isteyenler için bu alan her zaman açıktır.

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi