手写shell脚本批量修改文件名

问题:

作为前端开发,还原设计稿的同时,还要经常导出素材。某次活动需求上线前需要替换素材30张,导出时文件名如图,上传cdn时,需要重命名。

如果一张张手动重命名,麻烦又耗时。于是想到写shell脚本,批量修改文件名。改后如下图:

实现方法:

在目录下新建img文件夹,将图片放到img文件夹下。在目录下(与img文件夹同级)新建 batch_rename.sh文件,代码如下:
(注:batch_name.sh不要和要重命名的文件同一文件夹,否则会把batch_name.sh文件本身的名称修改掉。。)

IFS=$'\n'
cd ./img
for name in `ls *`
do
  name1=${name:3}
  name2=${name1/, 灯光=on/}
  name3=${name2/, 灯光=off/_dark}
  echo ${name3}
  mv $name ${name3}
done

打开终端运行batch_rename.sh 文件:

搞定。

posted @ 2022-12-04 11:57  MartinL  阅读(694)  评论(0编辑  收藏  举报