merhaba,
syntax sorununuz yok aslinda. mv ederken taget olarak kullandiginiz $LWR
degiskeni bos geliyor. Onu da yukarida atiyorsunuz.
Oradaki sorun ne onu anlamadim.... yazdiginiz sed dogru. programin diger
kismindan kaynakli birsey olabilir. Sorun $LWR bos geliyor.
selamlar...
Orhan Berent wrote:
Merhaba, bugun soru sorma gunum herhalde :)
1) Bir dizindeki dosya isimleri buyuk harfle olusmussa bunu kucuk harfli
isimlere cevirmek istedigim zaman asagidaki scripti kullaniyorum.
CNT=$#
while [ $CNT -ge 1 ]
do
NRM=$1
LWR=`echo "$NRM" | tr '[A-Z]' '[a-z]'`
if [ "$NRM" != "$LWR" ]
then
echo $NRM $LWR
mv $NRM $LWR
fi
shift; CNT=`expr $CNT - 1`
done
scriptin adi yap olsun. bir dizinde buyuk harfli dosya ismi varsa o
dizine inip,
find . -exec bash yap {} \;
dedigim zaman gayet guzel is goruyor.
./ALI ./ali
./VELI ./veli
2) ancak dosya isimlerindeki bosluk karakterlerini alt cizgiye
donusturmek istedigim zaman, scripti degistiriyorum ve tr komutu yerine
sed -e "s/\ /\_/g" yaziyorum
echo kismi yapilmasi gereken isi gosteriyor sadece.
./bosluklu dosya ./bosluklu_dosya
sonra da mv asagidaki hatayi veriyor.
usage: mv [-f | -i | -n] [-v] source target
mv [-f | -i | -n] [-v] source ... directory
bir syntax kaciriyorum ama nedir. sabriniz icin tesekkurler.
Orhan Berent
--
Baris Simsek
http://www.enderunix.org/simsek/
---------------------------------------------------------------------
Cikmak icin, e-mail: [EMAIL PROTECTED]
Liste arsivi: http://lists.enderunix.org
Turkiye'nin ilk FreeBSD kitabi: http://www.acikakademi.com/freebsd.php