码迷,mamicode.com
首页 > 其他好文 > 详细

批量转换目录大小写问题

时间:2018-03-06 23:21:25      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:批量转换目录大小写问题

1、根据需求,需要将某一目录下递归的所有大些字母转换成小写字符

2、代码如下


read -p "输入你要改变的父目录:"   dire                                       #读入目录

ls -lR $dire | grep / |awk -F : '{print $1}' > 2.txt                         #写入文件,以备校对

aa=`cat 2.txt | sort -r`                                                     #排序,生成倒序最底层目 录在最下方

for i in $aa                                                                 #循环

do

dd=`echo $i|awk -F / '{print  $NF}'`                         #按/查询字段数,截取最后目录

sss=`echo $i|awk -F $dd  '{print  NF}'`                      #获取字段数

if [ $sss -gt 2 ];then                                       #判断目录有无出现与最后目录一样的字段【以最后目录做切割】

echo $sss                                            #输出以最后目录做分割的截取数不等于2的,【即有重复的】

echo $i                                              #输出重复目录

echo                                                 #换行

else

directory=`echo $i|awk -F $dd  '{print  $1}'`        #截取除最后目录外其他目录

mv $i $directory`echo $dd | tr 'A-Z' 'a-z' `         #更改目录为小写【小写转大些,将tr后面颠倒即可】

fi

done

ls -lR $dire | grep / |awk -F : '{print $1}' > 3.txt                         #更改之后的目录,查看效果【cat 3.txt】

批量转换目录大小写问题

标签:批量转换目录大小写问题

原文地址:http://blog.51cto.com/13272050/2083622

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!