我有一个文件名列表abc1.doc
,abc2.doc
等等。始终采用文本[数字].doc 的形式。我希望它们重命名为 [number].text.doc。
我怎样才能做到这一点?
答案1
您可以使用prename
( rename
) perl 脚本perl
在 Debian/Ubuntu 中随软件包一起提供。它实际上是原始rename
脚本的一个分支。要解决您的问题,您可以执行以下操作:
rename -n 's/^([^[:digit:]]+)([^.]+)/$2\.$1/' *.doc
-n
用于试运行,如果您对更改感到满意,请删除-n
。
测试 :
$ rename -n 's/^([^[:digit:]]+)([^.]+)/$2\.$1/' *.doc
abc10.doc renamed as 10.abc.doc
abc1.doc renamed as 1.abc.doc
abc2.doc renamed as 2.abc.doc
abc3.doc renamed as 3.abc.doc
abc4.doc renamed as 4.abc.doc
abc5.doc renamed as 5.abc.doc
abc6.doc renamed as 6.abc.doc
abc7.doc renamed as 7.abc.doc
abc8.doc renamed as 8.abc.doc
abc9.doc renamed as 9.abc.doc