使用 rename 重命名文件

使用 rename 重命名文件

我正在尝试重命名 .srt 文件。这些文件目前的名称如下:

星际之门SG1.s02e19.One.False.Step.AC3.DVDRip.DivX-AMC.srt

我希望生成的文件是:

星际之门SG1.s02e19.srt

研究了重命名一段时间后,我想出了以下命令:

重命名 -n 's/(\d{19})/$1.srt/' *.srt

该方法应该保存前 19 个字符并删除其余字符,然后将 .srt 附加到前 19 个字符。但是它不起作用,我被难住了。我搜索了这个问题,但找不到任何帮助,据我所知,这个应该有效。任何帮助都将不胜感激。谢谢

答案1

$ rename -n 's/^(.{18}).*$/$1.srt/' *.srt
StargateSG1.s02e19.One.False.Step.AC3.DVDRip.DivX-AMC.srt renamed as StargateSG1.s02e19.srt

你有两个问题:

  1. \d代表任意数字,而您需要.的是任意字符。
  2. 您没有匹配文件名的其余部分,因此替换操作不会将其删除。

相关内容