使用 Bash 重命名以下形式的文件的最佳方法是什么:
(foo1, foo2, ..., foo1300, ..., fooN)
使用零填充的文件名:
(foo00001, foo00002, ..., foo01300, ..., fooN)
这不是纯粹的 bash,但是使用 Perl 版本更容易rename
:
rename 's/\d+/sprintf("%05d",$&)/e' foo*
Where 's/\d+/sprintf("%05d",$&)/e'
是 Perl 替换正则表达式。
-
\d+
将匹配第一组数字(至少一个数字)
-
sprintf("%05d",$&)
将把匹配的数字传递给 Perl 的sprintf
, and %05d
将填充到五位数字
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)