Alternatif bir çözüm olarak;
#!/bin/sh
for dosyaadi in `cat /tmp/filelist`
do
echo $dosyaadi
echo -n "Silinsin mi? (e/h): "
read islem
case "$islem" in
...................
esac
done
deneyebilirsiniz
----- Original Message -----
From: Cahit Güçlü
To: [email protected]
Sent: Tuesday, March 20, 2007 9:30 PM
Subject: [FreeBSD] shell script
Burası bu konunun yeri mi bilmiyorum ama en azından nereden yardım
alabileceğimi söyleyen birileri çıkabilir diye düşündüm.
Bir dosyanın içeriğini satır satır okuyup (dosya içeriğinde dosya adları var)
her bir satırda durup bu dosyayı sileyimmi diye sorup verilen cevaba göre işlem
yapan bir script yazmaya çalıştım:
#!/bin/sh
while read dosyaadi;
do
echo $dosyaadi
echo
echo -n "Silinsin mi? (e/h): ";
read islem;
case "$islem" in
... yapılacak işlemle ilgili komutlar ...
esac
done < /tmp/filelist
gibi bir kod yazdım. Ama while read döngüsünün içindeki e/h cevabını isteyen
read komutuna gelindiğinde sanırım bir sonraki while read devreye giriyor ve
sıradaki satır soruya cevap olarak girilmiş gibi işleme devam ediyor, benim
klavyeden cevap girmemi beklemiyor. Silinsin mi sorusundan sonra benim
klavyeden gireceğim cevabı beklemesini nasıl sağlayabilirim ya da başka bir
şekilde bu işlemi nasıl yapabilirim?
Teşekkürler