Mesela bir dosyanin icindeki bir kelimeyi degistirmek istiyorsunuz. Bunun icin uzun uzun perl, awk,sed komutlarini kullanmaniza gerek yok. Her linux da default olarak kurulan ED editoru yeterde artar bile.
Mesela bir dosyanin icinde gecen Ankara kelimesini Istanbul olarak degistirmek icin:
Kod:
$ echo '
1,$s/Ankara/Istanbul/g
w
q
' | ed test.sh
Mesela 5. satira birsey ilave etmek isterseniz:
Kod:
$ kelime="Burasi 5. satirdir"
$ ed << EOF
> e dosya.sh
> 5i
> ${kelime}
> .
> w
> q
> :q
> EOF
Ya da tam tersi, 5. satiri silmek istiyorsaniz:
Kod:
$ ed << EOF
> e dosya.sh
> 5d
> .
> w
> q
> :q
> EOF
Basit bir ED editoru bile nelere kadir. Bugune kadar hep awk, perl, sed ile kafamizi karistirip duruyorduk.:-)
Mesela Tolga dosyasinda gecen butun ALI'leri degistirmek istiyorsan:
en iyi yöntem:
Kod:
perl -pi -e 's/TOLGA/ALI/' tolga.txt
veya
biraz cetrefelli yöntem, cunku 2. dosyaya yönlendirmek gerekir:
Kod:
sed -e 's/TOLGA/ALI/' tolga.txt > yeni_tolga.txt
Eger degisecek birden cok yer varsa;
Kod:
sed -e 's/TOLGA/ALI/g;s/TOLGA2/ALI/" tolga.txt > yeni_tolga.txt