我想重命名 200 个文件实际上每个文件都这样命名:
00001-abcd-efgg?g.............
00002-xcvb-vbnv?b.............
00003-cbvc-hugh?j.............
现在我想像这样重命名所有这些文件:
001
002
003
...
所以我需要删除前 2 位数字,并删除第五位数字之后的所有内容。警告:我要重命名的每个文件中都有一个“?”。
for f in *
do
mv "$f" "${f:2:3}"
done
使用rename
:
rename -nv 's,.*(\d{3}).*,$1,' *
输出:
00001-abcd-efgg?g............. renamed as 001
00002-xcvb-vbnv?b............. renamed as 002
00003-cbvc-hugh?j............. renamed as 003
n
当您对输出满意时删除。