批量修改文件名称

举报
沐清 发表于 2021/07/06 16:38:55 2021/07/06
【摘要】 脚本:[root@lzw test1]# more mod_file.sh #/bin/bash#modify file#2019-09-03for f in `ls *fin*.jpg`do mv $f `echo ${f//_finished/}`done批量创建文件:[root@lzw test1]# touch stu_2019114_{1..9}_finished.jpg[root...


脚本:
[root@lzw test1]# more mod_file.sh 
#/bin/bash
#modify file
#2019-09-03
for f in `ls *fin*.jpg`
do 
mv $f `echo ${f//_finished/}`
done

批量创建文件:
[root@lzw test1]# touch stu_2019114_{1..9}_finished.jpg
[root@lzw test1]# ls
stu_2019114_1_finished.jpg  stu_2019114_4_finished.jpg  stu_2019114_7_finished.jpg
stu_2019114_2_finished.jpg  stu_2019114_5_finished.jpg  stu_2019114_8_finished.jpg
stu_2019114_3_finished.jpg  stu_2019114_6_finished.jpg  stu_2019114_9_finished.jpg

编写脚本:
[root@lzw test1]# vim mod_file.sh
脚本增加执行权限:
[root@lzw test1]# chmod +x mod_file.sh 
执行脚本:
[root@lzw test1]# sh mod_file.sh 
查看执行结果:
[root@lzw test1]# ls
mod_file.sh        stu_2019114_2.jpg  stu_2019114_4.jpg  stu_2019114_6.jpg  stu_2019114_8.jpg
stu_2019114_1.jpg  stu_2019114_3.jpg  stu_2019114_5.jpg  stu_2019114_7.jpg  stu_2019114_9.jpg

注释:本案例主要针对生产当中文件具有相同的格式。脚本主要for循环语句通过ls查看当前目录的文件,然后通过定义变量文件使用mv命令重新命名新的文件。着重点,主要对一个“/”表示替换匹配的第一个字符串和两个“//”表示替换匹配的第一个字符串的理解。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。