From: Necati Ersen ŞİŞECİ (siseci@acikkod.org)
Date: Fri 25 Jun 2004 - 12:51:16 EEST
Merhaba,
Ornek bir text dosyasi hazirlayip bunu kullanabilirsiniz.
1.txt
---------
Sayin ADDRESS, sifreniz asagidaki gibidir:
PASSWORD
olsun.
cat sifre_dosyasi |
while read LINE
do
ADDR=`echo $LINE| cut -d" " -f1"
PASS=`echo $LINE| cut -d" " -f2"
cat gonderilecek_dosya | eval sed 's/ADDRESS/$ADDR/' | eval sed
's/PASSWORD/$PASS/' > /tmp/gonder
cat /tmp/gonder | mail $ADDR -s"Sifreniz"
done
Burda sed icin ' kullandigimizdan dolayi, eval kullanmamiz gerekiyor.
aksi
takdirde
$PASS yazacaktir.
seklinde bir shell script isinize yarayabilir.
Ikinci sorunuz icinse,
bir dosyanın sonuna ekleme yapmak icin >> kullanıyoruz.
Ama eger dosyanın ortasında bir yere ekleme yapmak istiyorsanız,
sed kullanacagiz.
cad dosya | sed '15iMerhaba'
ile 15nci satira Merhaba kelimesi ekleniyor.
Dosyalanızda HOST= gibi bir satirdan sonra eklemek isterseniz,
grep -n "^HOST=" dosya ile kacinci satirda oldugunu bulabilirsiniz.
^: satir basi anlaminda
for dosya in *
do
SATIR=`grep -n "^HOST=" $dosya | cut -d: -f1`
SATIR=$(($SATIR + 1)
cat $dosya | eval sed '`echo $SATIR`iEKLENECEKYAZI' > $dosya.new
done
* olan tum dosyalarda "HOST=" i bulup bir sonraki satira EKLENECEKYAZI
yi ekleyip dosyayi .new uzantili olarak kaydedecektir.
Umarim bu scriptler isinize yarar.
Iyi calismalar.
Necati Ersen ŞİŞECİ
http://www.acikkod.org
http://www.enderunix.org
-----Original Message-----
From: linux-baslangic-bounce@liste.linux.org.tr
[mailto:linux-baslangic-bounce@liste.linux.org.tr] On Behalf Of A.Murat
BAYRAM
Sent: Friday, June 25, 2004 12:28 PM
To: linux-baslangic@liste.linux.org.tr
Subject: [linux-baslangic] Shellscript ihtiyaci
Merhaba;
İki konuda yardimlariniza ihtiyacim var
Birincisi bir script;
Elimde bir text dosyasi var, her satirda bir e-posta adresi ve
karsilarinda
rastgele olusturulmus sifreleri var.
eposta_1@domain.com cylmylm
eposta_2@domain.com rymznye
eposta_3@domain.com gytyenl
eposta_4@domain.com yylzngc
bu sekilde yaklasik 600 satir. Bu script, her bir satirdaki e-posta
adresine
karsilarinda bulunan sifreleri gonderecek. Tabi her postada bir aciklama
da
yapilmasi gerekiyor. Mesela eposta_1@domain.com adresine gonderilecek
posta
Sayin eposta_1@domain.com, sifreniz asagidaki gibidir:
cylmylm
Seklinde olacak.
Ikinci sorum;
Bir text dosyasi icerisine yeni bir satir nasil eklenir? Mesela bircok
conf
dosyasi var, hepsine tek seferde belli bir satir eklemek istiyorum.
Bunu nasil yapabilirim?
Bu tip scripting icin gerekli bilgileri nereden alabilirim?
Tesekkurlerimi sunuyor iyi calismalar diliyorum.
--- linux-baslangic listesinden cikmak ve tum listeci islemleri icin http://liste.linux.org.tr/ adresini kullanabilirisniz. Bu listeden cikmak icin <a href="mailto:linux-baslangic-request@liste.linux.org.tr?Subject=unsub scribe" > tiklayiniz</a> --- linux-baslangic listesinden cikmak ve tum listeci islemleri icin http://liste.linux.org.tr/ adresini kullanabilirisniz. Bu listeden cikmak icin <a href="mailto:linux-baslangic-request@liste.linux.org.tr?Subject=unsubscribe"> tiklayiniz</a>