如何通过插入字符来重命名多个文件?

如何通过插入字符来重命名多个文件?

我有很多以下形式的文件

sw001
sw002
sw003
...

我想在 sw 和数值之间插入一个句点。我怎样才能做到这一点?

答案1

如果您没有rename并且不想下载它,请使用以下命令:

for file in sw*; do
    mv "$file" "${file/sw/sw.}"
done

答案2

在 Linux 上:

rename 'sw' 'sw.' sw*

在 Debian、Ubuntu 及其衍生版本上,使用rename.ulnot renamerename在这些发行版上是不同的文件重命名命令)。

答案3

如果您可以将转换表示为 Perl 正则表达式,那么 Perl 附带的 rename 是一个不错的选择。它将 Perl 表达式应用于每个文件名,然后在名称不同时更改名称。通常,您需要 Perl 正则表达式替换:

rename 's/sw/sw./' sw*

这与重命名(1)与 util-linux-ng 一起提供,但通常 Perl 版本是默认版本。请man 1 rename查看检查您的系统有哪一个。

相关内容