Tartışma

Linux sed ile Birden Fazla Kelime Değiştirme

Başlatan ZeroLatency · 13 Ağu 2026 09:51 · 0 Görüntülenme · 0 Yanıtlar
Konuyu Açan #0
Sed (stream editor), metin dosyaları üzerinde düzenleme işlemleri yapmak için kullanılan güçlü bir komut satırı aracıdır. Birden fazla kelimeyi değiştirmek için sed kullanmak, metin manipülasyonu ve otomasyonu açısından oldukça faydalı olabilir. Bu yazıda, sed ile birden fazla kelimeyi nasıl değiştirebileceğinizi detaylı bir şekilde inceleyeceğiz.

Sed komutu, genellikle şu şekilde kullanılır:

CODE
1sed 's/eski_kelime/yeni_kelime/g' dosya_adı.txt


Bu örnekte, "eski_kelime" ifadesi "yeni_kelime" ile değiştirilir. Ancak birden fazla kelimeyi değiştirmek istediğinizde, sed komutunu birden fazla "s" (substitute) ifadesi ile birleştirebilirsiniz. Örneğin:

CODE
1sed -e 's/birinci_kelime/ilk_kelime/g' -e 's/ikinci_kelime/yeni_kelime/g' dosya_adı.txt


Burada "-e" seçeneği, birden fazla ifade eklemenizi sağlar. Yukarıdaki örnekte, "birinci_kelime" ifadesi "ilk_kelime" ile, "ikinci_kelime" ifadesi ise "yeni_kelime" ile değiştirilir.

Bir başka yöntem ise, bir dosyadaki kelimeleri bir dizi olarak tanımlamak ve bu diziyi sed ile birlikte kullanmaktır. Örneğin:

CODE
1sed 's/\(birinci_kelime\|ikinci_kelime\)/yeni_kelime/g' dosya_adı.txt


Bu komut, hem "birinci_kelime" hem de "ikinci_kelime" ifadelerini "yeni_kelime" ile değiştirecektir. Burada, \| operatörü birden fazla kelime arasında alternatif oluşturarak, her iki kelimeyi de hedef alır.

Son olarak, sed komutunu bir dosyayı kalıcı olarak değiştirmek için "-i" seçeneği ile kullanabilirsiniz:

CODE
1sed -i -e 's/birinci_kelime/yeni_kelime/g' -e 's/ikinci_kelime/yeni_kelime/g' dosya_adı.txt


Bu komut, "dosya_adı.txt" dosyasındaki belirtilen kelimeleri kalıcı olarak değiştirir.

Sed komutunun esnekliği sayesinde, metin dosyalarındaki birden fazla kelimeyi hızlı ve etkili bir şekilde değiştirmek mümkündür. Bu teknikler, dosya düzenleme işlemlerini otomatikleştirirken zaman kazandırır ve hata oranını düşürür.

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

0 alıntı seçildi