问题:
我需要重命名成千上万个文件,它们都包含一个以'42469'开头的10位数字,我需要将每个文件中的10位数字移动到文件名的开头,并添加一个下划线,例如:
Original - HOLZHEAUSER GAS UNIT_ 2_4246932863_2.pdf
Result - 4246932863_HOLZHEAUSER GAS UNIT_2_2.PDF
谁能帮助我?提前谢谢!
答案1:
使用mmv重命名带有通配符匹配的文件:
$ touch 'HOLZHEAUSER GAS UNIT_ 2_4246932863_2.pdf'
$ mmv '*_ ?_*_?.*' '#3_#1_#2_#4.#u5'
$ ls
'4246932863_HOLZHEAUSER GAS UNIT_2_2.PDF'
答案2:
你也可以用sed
来做,此命令应该完全满足你的需要:
ls | sed -r 's/(.*) 2_(42469)([0-9]+)_2(.*)/"&""23_12_24"/' | xargs -L1 mv -v
相关文章