批量修改文件名称方法
方法一:rename批量修改
rename [options] "s/oldname/newname/" file
其中包含三个部分:
原字符串oldname:将要被替换的字符串;
目标字符串newname:原字符替换成的目标字符串;
文件file:指定要改变文件名的文件列表。
修改后缀名:
rename "s/.html/.php/" * # 把.html 后缀的改成 .php后缀
rename -n "s/Screenshot from ([0-9\\- ]+).jpg/\1.jpg/" *
将 () 匹配的内容取出来放到替换部分。
find ./ -name "test*.txt" -newer start_time -and ! -newer end_time | xargs rename _ok.txt _.txt
方法二:for循环遍历,mv修改
for a in ./*.py; do mv $a ${a//.py/.pybak}; done
方法三:awk 格式化修改
ls test*.txt | awk -F '.' '{print "mv " $0" "$1".txt"}' | bash
awk,$0为文件全名,$1为 . 分隔的第一部分(文件名),$2为第二部分,以此类推;