Merhabalar,

Aşağıdaki komut işinizi görecektir. Buradaki anahtar karakterler ".*" dir. 
Anlamı "ornek" ifadesinden sonra geride ne varsa onlarıda al.

perl -pi.backup -e 's:^ornek.*:yeniornek:g' dosya*

Yukarıdaki komut işlem yaptığı her bir dosyanın .backup isimli yedeğini 
alacaktır. Yedek almak istemiyorsanız komut aşağıdaki gibi olmalıdır.


Kolay gelsin

-Ismail

perl -pi -e 's:^ornek.*:yeniornek:g' dosya*


Thursday, May 12, 2011, 9:36:33 AM, you wrote:


merhaba,

Bir klasör içerisinde yüzlerce dosya var.
Bu dosyalarda mesela ornek ile başlayan ancak farklı devam eden satırlar mevcut.
her bir dosyanın içerisinde ornek ile başlayan satırı farklı olacak şekilde 
değiştirmem lazım

Sed komutu veya perl ile yapılabileceğini biliyorum.


sed -i '/^ornek /d' dosya1

Şeklinde yazdığımda ornek ile başlayan satırı silebiliyorum 

sed -i 's/^ornek /degistir' 
Şeklinde ornek kelimesini değiştirebiliyorum

ama benim istediğim satırı silmek veya ornek ile başlayan kelimeyi değiştirmek  
değil satırı değiştirmek ve bunu yaparken her dosya için bir tek satırda komutu 
çalıştırmam gerek.

_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap