admin

Linux 下文件批量重命名
假设现有如下文件列表:[www.bdys.me]皇甫神医.EP01.2018.WEB-DL.1080P.X264....
扫描右侧二维码阅读全文
20
2019/01

Linux 下文件批量重命名

假设现有如下文件列表:

[www.bdys.me]皇甫神医.EP01.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP02.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP03.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP04.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP05.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP06.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP07.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP08.2018.WEB-DL.1080P.X264.AAC.mp4
[www.bdys.me]皇甫神医.EP09.2018.WEB-DL.1080P.X264.AAC.mp4

想批量修改成如下列表:

[哔嘀影视-www.bdys.me]皇甫神医.EP01.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP02.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP03.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP04.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP05.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP06.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP07.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP08.2018.WEB-DL.1080P.X264.AAC.mp4
[哔嘀影视-www.bdys.me]皇甫神医.EP09.2018.WEB-DL.1080P.X264.AAC.mp4

最容易想到的就是用循环读取文件名然后同mv命令来重命名了,但是这太繁琐了,Linux 给我们提供了一个专门用来批量重命名的命令:rename

rename arg1 arg2 arg3

它接收三个参数,arg1被替换的字符串、arg2欲修改的字符串、arg3待修改的文件(支持正则匹配文件名)
所以上面的需求命令就可以这么写:

rename [www.bdys.me] [哔嘀影视-www.bdys.me] *.mp4

但是在Debian系列的操作系统下,比如我用的Ubuntu,将会类似报如下错误:

allowed while "strict subs" in use at (user-supplied code)

在这类操作系统下,rename命令有所不同,它接收两个参数,第一个参数是一个perl表达式,第二个参数和上面的第三个参数一致,上面需求命令如下:

rename 's/[www.bdys.me]/[哔嘀影视-www.bdys.me]/' *.mp4

Last modification:January 20th, 2019 at 08:02 pm
If you think my article is useful to you, please feel free to appreciate

2 comments

  1. 邓工

    哥们,人才啊。有没有 兴趣搞车载管理平台。一起干一番事业。联系微信13510671870 我们开源平台网站WWW.car-eye.cn 产品地址www.liveoss.com www.liveoss:8088

    1. admin
      @邓工

      目前打算辞职,不搞这个行业了,被现在这个公司的这些代码搞怕了

Leave a Comment