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

问题描述 投票:0回答:1

我有很多文件都是以 processConfig-. 我想把它改名为 processCfg-. 有什么简单的方法可以将文件名的第一部分改为 processCfg- 在linux中?

但我不想把这个文件重命名为 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
linux mv
1个回答
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那么,这似乎是正确的工具=)

如果没有,就把它变成默认的(通常已经是这样了)。Debian 和派生如 Ubuntu :

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

如果你在其他发行版中没有这个命令,请搜索你的软件包管理器来安装它,或者是 动手 (没有deps...)


这个工具最初是由Perl的爸爸Larry Wall写的。

© www.soinside.com 2019 - 2024. All rights reserved.