大写变小写
#!/bin/bash
echo "directory name is:"
read fname
echo "cd the directory"
cd /home/xx/$fname
pwd
echo "change lower to upper"
for filename in `ls`
do
if [[ $filename != *[[:upper:]]* ]];then
continue
fi
new=`echo $filename | tr 'A-Z' 'a-z' `
mv $filename $new
echo "the $filename is rename to $new"
done
echo "after change"
ls
小写变大写
#!/bin/bash
echo "directory name is:"
read fname
echo "cd the directory"
cd /home/xx/$fname
pwd
echo "change lower to upper"
for filename in `ls`
do
if [[ $filename != *[[:lower:]]* ]];then
continue
fi
new=`echo $filename | tr 'a-z' 'A-Z' `
mv $filename $new
echo "the $filename is rename to $new"
done
echo "after change"
ls
另一种 小写变大写(虽然和上面相比是换汤不换药,但是感觉好理解一些)
#!/bin/bash
cd /home/xx/testmyself
echo "before"
ls
for fname in `ls`
do
if [[ $fname = *[[:lower:]]* ]]
then
new=`echo $fname | tr 'a-z' 'A-Z' `
mv $fname $new
fi
done
echo "after"
ls
注意: if [[ $fname = *[[:lower:]]* ]] 如果不加最外层的[ ],则会报错 [: too many arguments