shell编程之 编写renfilex.sh脚本

1)验证原始改名脚本renfile.sh的效果
脚本用途为:批量修改当前目录下的文件扩展名,将.doc改为.txt。
脚本内容参考如下:

[root@svr5 ~]# vim renfile.sh
#!/bin/bash
for FILE in *.doc
do
    mv $FILE  ${FILE%.doc}.txt
done
[root@svr5 ~]# chmod +x renfile.sh

创建一个测试用的文件夹rendir,并在其下建几个测试文件

[root@svr5 ~]# mkdir rendir
[root@svr5 ~]# cd rendir
[root@svr5 rendir]# touch file1.doc abcde.doc xxyyzz.doc other1.xls killbill.mp4
[root@svr5 rendir]# ls
abcde.doc  file1.doc  killbill.mp4  other1.xls  xxyyzz.doc

调用renfile.sh脚本,查看修改结果(原来扩展名为.doc的文件,其扩展名都变成了.txt):

[root@svr5 rendir]# ../renfile.sh
[root@svr5 rendir]# ls
abcde.txt  file1.txt  killbill.mp4  other1.xls  xxyyzz.txt

2)建立改进版脚本renfilex.sh
要适应不同扩展名文件的修改,并能够反向还原。
修改前的扩展名、修改后的扩展名通过位置变量 $1、$2提供。
改进的脚本编写参考如下:

[root@svr5 rendir]# cp ../renfile.sh ../renfilex.sh
[root@svr5 rendir]# vim ../renfilex.sh
#!/bin/bash
for FILE in "$1"
do
    mv $FILE ${FILE%$1}"$2"
done

3)验证、测试改进后的脚本
将 *.doc文件的扩展名改为.txt:

[root@svr5 rendir]# ls  							//修改前
abcde.txt  file1.txt  killbill.mp4  other1.xls  xxyyzz.txt
[root@svr5 rendir]# ../renfilex.sh .txt .doc
[root@svr5 rendir]# ls  							//修改后
abcde.doc  file1.doc  killbill.mp4  other1.xls  xxyyzz.doc

将 *.mp4文件的扩展名改为.mkv:

[root@svr5 rendir]# ls  							//修改前
abcde.doc  file1.doc  killbill.mp4  other1.xls  xxyyzz.doc
[root@svr5 rendir]# ../renfilex.sh .mp4 .mkv
[root@svr5 rendir]# ls  							//修改后
abcde.doc  file1.doc  killbill.mkv  other1.xls  xxyyzz.doc
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值