0

我想重命名 200 个文件实际上每个文件都这样命名:

00001-abcd-efgg?g.............
00002-xcvb-vbnv?b.............
00003-cbvc-hugh?j.............

现在我想像这样重命名所有这些文件:

001
002
003
...

所以我需要删除前 2 位数字,并删除第五位数字之后的所有内容。警告:我要重命名的每个文件中都有一个“?”。

4

2 回答 2

4
for f in *
do
   mv "$f" "${f:2:3}"
done
于 2012-08-17T14:51:58.970 回答
1

使用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当您对输出满意时删除。

于 2012-08-18T18:53:03.940 回答