重命名Linux中文件名的第一部分?

时间:2020-06-08 16:22:55

标签: linux mv

我有很多以processConfig-开头的文件。我想将其重命名为processCfg-。在Linux中将文件名的第一部分更改为processCfg-的简单方法是什么?

但是我不想重命名此文件processConfig.json,因为它与我的前缀不匹配。

> ls -lrth
total 467
-rw-r--r--  1 david  staff   9.8K May 26 15:14 processConfig-data-1234.json
-rw-r--r--  1 david  staff    11K May 26 15:14 processConfig-data-8762.json
-rw-r--r--  1 david  staff   4.9K May 26 15:14 processConfig-dataHold-1.json
-rw-r--r--  1 david  staff   6.6K May 26 15:14 processConfig-letter.json
-rw-r--r--  1 david  staff   5.6K May 26 16:44 processConfig-data-90987.json
-rw-r--r--  1 david  staff   284K May 28 18:44 processConfig.json

1 个答案:

答案 0 :(得分:1)

赞:

rename -n 's/^processConfig-/processCfg-/' processConfig-*.json

当输出看起来不错时,请移除-n开关以重命名为真实。

man rename

warning 有些其他具有相同名称的工具可能无法执行此操作,因此请小心。

util-linux软件包中的重命名命令不会。

如果运行以下命令(GNU

$ file "$(readlink -f "$(type -p rename)")"

并且您得到的结果包含Perl script, ASCII text executable而不包含ELF,那么这似乎是正确的工具=)

如果没有,则将其设置为DebianUbuntu之类的派生类的默认设置(通常已经是这样):

$ sudo apt install rename
$ sudo update-alternatives --set rename /usr/bin/file-rename

如果您没有此发行版的其他命令,请搜索软件包管理器以进行安装或do it manually(无部门...)


此工具最初由Perl的父亲Larry Wall编写。

相关问题