Tekil Mesaj gösterimi
  #1  
Alt 13. April 2009, 12:25 AM
PaLeRmO - ait Kullanıcı Resmi (Avatar)
PaLeRmO 
Administrator
Aktive
Seviye: []
Aktiflik: /
Güç: /
Deneyim: %
Karizma
Üye No: 1
Tecrübe Puanı: 10
Rep Puani : 10
Rep Derecesi:
PaLeRmO Seçkin bir yolda.
İletişim
PaLeRmO - MSN üzeri Mesaj gönder
Bilgi
PaLeRmO isimli Üye şimdilik offline konumundadır
Üyelik tarihi: Mar 2007
Mesajlar: 56,207
Konuları: 210
Bir dosyanin icindeki bir kelimeyi degistirmek


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
Alıntı ile Cevapla