Shell命令批量修改图片文件名
公司同事今天找我帮忙修改文件名,我一看,好嘛,几百个文件要改名,文件名格式是_01.png_02.png这样依次类推,同事要求把前面的"_"给去掉,还好要求算简单,没有让我再改成其他名字。
一条命令搞定:
foriin`ls_*.png`;domv"$i"`echo"$i"|awk-F'_0''{print$1"0"$2}'`;done
如果要连_0都去掉的话,就这样写:
foriin`ls_*.png`;domv"$i"`echo"$i"|awk-F'_0''{print$1,$2}'`;done
好了,这样就搞定了,再给大家一些其他类似的命令吧,下面的命令我没有验证,有问题的话不要找我哦.
把格式*_?.jpg的文件改为*_0?.jpg:
foriin`ls*_?.jpg`;domv"$i"`echo"$i"|awk-F'_''{print$1"_0"$2}'`;done
把文件名的前三个字母变为vzomik:
foriin`ls`;domv-f"$i"`echo"$i"|sed's/^.../vzomik/'`;done
把文件名的后四个字母变为vzomik:
foriin`ls`;domv-f"$i"`echo"$i"|sed's/....$/vzomik/'`;done