命令行更改文件名

命令行更改文件名

我有大量想要重命名的文件。这是我想如何更改文件名的示例:

从:

PD5 grey nice display 1.jpg

到:

pd5-grey-nice-display-showcase-1.jpg

我需要使用什么命令行代码?

答案1

如果你有 Perl 的rename

rename -n '$_=lc;s/ /-/g;s/([0-9]+)\./showcase-$1\./' your_file_name

应该可以解决问题。

解释:

  • $_=lc将所有字符转换为小写
  • s/ /-/g用破折号替换所有单个空格(s/ +/-/g如果您预计有多个连续空格,请使用)
  • s/([0-9]+)\./showcase-$1\./查找一系列连续数字,后跟一个点(标记文件扩展名)并showcase-在该序列之前添加。

笔记

  • 上面的代码不会做任何事,它只会打印出新的文件名,而不会实际重命名该文件。确保其正常工作后,即可卸下-n开关。

相关内容