shell – 如何通过替换文件名中的单词来重命名多个文件?

前端之家收集整理的这篇文章主要介绍了shell – 如何通过替换文件名中的单词来重命名多个文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
将ACDC更换为AC-DC

例如,我们有这些文件

ACDC – Rock N’ Roll Ain’t Noise Pollution.xxx

ACDC – Rocker.xxx

ACDC – Shoot To Thrill.xxx

我希望他们成为:

AC-DC – Rock N’ Roll Ain’t Noise Pollution.xxx

AC-DC – Rocker.xxx

AC-DC – Shoot To Thrill.xxx

我知道sed或awk用于此操作.我不能谷歌任何东西,所以我要求你的帮助=)你能为这项任务提供完整的shell命令吗?

反馈:Solution for OSX users

rename 's/ACDC/AC-DC/' *.xxx

从男人重命名

DESCRIPTION
       "rename" renames the filenames supplied according to the rule specified as the 
first argument.  The perlexpr argument is a Perl expression which is expected to modify the 
$_ string in Perl for at least some of the filenames specified.  If a given filename is not 
modified by the expression,it will not be renamed.  If no filenames are given on
           the command line,filenames will be read via standard input.

例如,要重命名匹配“* .bak”的所有文件以剥离扩展名,您可能会说

rename 's/\.bak$//' *.bak

要将大写名称翻译为较低的名称,您可以使用

rename 'y/A-Z/a-z/' *

猜你在找的Bash相关文章