shell脚本批量重命名文件

首先我的资源文件名称如下:

Manual Book Vandroid S5i(1219)_页面_01.jpg

Manual Book Vandroid S5i(1219)_页面_02.jpg

Manual Book Vandroid S5i(1219)_页面_03.jpg

                                 。。。

其中这种文件有很多。

目标格式是:Manual_01.jpg,然后在网上找了相关的文档,发现有这方面的东西,经过最终的尝试,linux下的bash脚本写成如下:

for file in Manual*;do mv "$file" "${file/ Book\ Vandroid\ S5i(1219)_页面 /}"; done

可以成功的运行。

有几个注意点:

        A.如果字符串中有空格,请用‘\ ’代替(不包含单引号),

下面来解析一下这个脚本。

for file in Manual*;-------------for表示一个循环,例如java或C语言中的for关键字,’Manual*‘表示文件夹下文件名称以字符‘Manual’开头的所有文件,循环给file 变量赋值。

mv----表示一个命令,详细信息自己$man mv;

“$file” 表示取变量file所指向的文件,${file/oldstring/newstring},oldstring表示将要替换的字符串,newstring表示用了替换的字符串,这里我们为空(无字符)。

 

最后其它网站有#%的使用,但现在还未明白,如果你知道,可以回复一下,先谢谢!

 

2013.12.31

现在还遇到一个问题,就是文件的名称都是数字,而且有规律的异常递增,比如:21.jpg,22.jpg,23.jpg。。。35.jpg

当然我们需要的目标文件是1.jpg,2.jpg,3.jpg.....15.jpg

所以我们将这些名称减去20就可以了,但是、但是,这个名称是一个字符串,所以不能这么直接减,得去将字符串转换为数字。

      嗯,以上是一个思路。这个工作量应该非常复杂,等你把这个东西实现将是在2014年的夏天。但是如果我们只命名一个文件的命令是:

                         mv 21.jpg 1.jpg

       那么我们能否通过其他的方法批量生产这种有规律的命令呢?有!通过excel来完成。

       

mv 46.jpg 1.jpgmv 46.jpg 1.jpg
mv 47.jpg 2.jpgmv 47.jpg 2.jpg
mv 48.jpg 3.jpgmv 48.jpg 3.jpg
mv 49.jpg 4.jpgmv 49.jpg 4.jpg
mv 50.jpg 5.jpgmv 50.jpg 5.jpg
mv 51.jpg 6.jpgmv 51.jpg 6.jpg
mv 52.jpg 7.jpgmv 52.jpg 7.jpg
mv 53.jpg 8.jpgmv 53.jpg 8.jpg
mv 54.jpg 9.jpgmv 54.jpg 9.jpg
mv 55.jpg 10.jpgmv 55.jpg 10.jpg
mv 56.jpg 11.jpgmv 56.jpg 11.jpg
mv 57.jpg 12.jpgmv 57.jpg 12.jpg
mv 58.jpg 13.jpgmv 58.jpg 13.jpg
mv 59.jpg 14.jpgmv 59.jpg 14.jpg
mv 60.jpg 15.jpgmv 60.jpg 15.jpg
mv 61.jpg 16.jpgmv 61.jpg 16.jpg
mv 62g 

        

再来给大家讲解一下如何生产这个列表:

        第1列,输入mv 46然后下拉一列。

         第2列,输入.jpg 1.jpg然后下拉,后面的数字都会自动增加的。

        第三列呢,是将前两列合并起来 =""&B89&""&C89&""

最后复制第三列,在bash窗口黏贴就可以了。

 

干完这件事,真有成绩感,linux还真好,能完成很多重复的工作。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值