如何重命名一堆文件
How to rename a bunch of files
我有一堆以 "NCI_" 开头的文件,如何重命名它们以 "NCIB_" 开头而不是 "NCI_"
我尝试在包含文件的文件夹中使用以下命令:
rename 's/NCI_/NCIB_/' *
但是没有用。有人可以帮忙吗?
有两个名为 rename
的工具,一个来自 util-linux,另一个是用 Perl 编写的。 Perl 版本有时在包管理器中可用 prename
或 perl-rename
.
检查 rename --help
以了解您拥有的是哪一个。 util-linux rename
打印如下内容:
$ rename --help
Usage:
rename [options] <expression> <replacement> <file>...
...
Perl rename
打印出这样的东西(它在我的 Arch Linux 系统上被称为 perl-rename
):
$ perl-rename --help
Usage: perl-rename [OPTION]... PERLEXPR FILE...
Rename FILE(s) using PERLEXPR on each filename.
...
使用 Perl 重命名,根据其在您系统上的可执行文件的名称,您的命令应该有效:
$ perl-rename 's/NCI_/NCIB_/' *
但是如果你有util-linux版本,那么它应该是这样的:
$ rename NCI_ NCIB_ *
您可以使用如下所示的重命名命令:
rename NCI_ NCIB_ *
查看示例输出的屏幕截图。
也许像
find . -name "NCI_*" -exec bash -c 'mv [=10=] ${0/NCI_/NCIB_}' {} \;
查找文件并使用 mv
将旧字符串替换为新字符串来执行重命名。
我有一堆以 "NCI_" 开头的文件,如何重命名它们以 "NCIB_" 开头而不是 "NCI_" 我尝试在包含文件的文件夹中使用以下命令:
rename 's/NCI_/NCIB_/' *
但是没有用。有人可以帮忙吗?
有两个名为 rename
的工具,一个来自 util-linux,另一个是用 Perl 编写的。 Perl 版本有时在包管理器中可用 prename
或 perl-rename
.
检查 rename --help
以了解您拥有的是哪一个。 util-linux rename
打印如下内容:
$ rename --help
Usage:
rename [options] <expression> <replacement> <file>...
...
Perl rename
打印出这样的东西(它在我的 Arch Linux 系统上被称为 perl-rename
):
$ perl-rename --help
Usage: perl-rename [OPTION]... PERLEXPR FILE...
Rename FILE(s) using PERLEXPR on each filename.
...
使用 Perl 重命名,根据其在您系统上的可执行文件的名称,您的命令应该有效:
$ perl-rename 's/NCI_/NCIB_/' *
但是如果你有util-linux版本,那么它应该是这样的:
$ rename NCI_ NCIB_ *
您可以使用如下所示的重命名命令:
rename NCI_ NCIB_ *
查看示例输出的屏幕截图。
也许像
find . -name "NCI_*" -exec bash -c 'mv [=10=] ${0/NCI_/NCIB_}' {} \;
查找文件并使用 mv
将旧字符串替换为新字符串来执行重命名。