linux转换大小写的脚本代码,文件名大小写转换的shell脚本(4种方法)

#!/bin/sh

# this script will change file name recursively with option

# -u: locase to upcase

# -l: upcase to lowcase

hint () {

echo " Usage: $0 [-l|-u] DIR1 [DIR2 DIR3...]

-l to lowcase

-u to upcase"

exit 1

}

if test $# -lt 2; then

echo "Too few arguments."

hint

fi

while [ "$1" ]; do

case $1 in

-l) ACTION="lo"

shift 1

;;

-u) ACTION="up"

shift 1

;;

*) if test -d $1; then

DIR="$DIR $1"

else

echo "no such directory --- $1"

hint

fi

shift

;;

esac

done

# echo $ACTION

# echo $DIR

FOUND=`find $DIR | sort -r`

for i in $FOUND; do

DN=`dirname $i`

BS=`basename $i`

loBS=`echo $BS | tr '[A-Z]' '[a-z]'`

upBS=`echo $BS | tr '[a-z]' '[A-Z]'`

NAME1=$DN/$BS

if [ "$ACTION" = "lo" ]; then

NAME2=$DN/$loBS

elif [ "$ACTION" = "up" ]; then

NAME2=$DN/$upBS

fi

if [ "$NAME1" = "$NAME2" ]; then

echo "****: $NAME1 ---x--- $NAME2 identical!"

else

echo "- renaming $NAME1 --> $NAME2"

mv $NAME1 $NAME2

fi

done

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值