我需要将 *-dev.example.com.cfg 重命名为 *-prod.example.com.cfg
例如,如果文件名是 db-dev.example.com.cfg,我需要将其重命名为 db-prod.example.com.cfg
大约有 200 多个文件,有没有办法通过命令行来完成?
您可以使用参数替换在纯 bash 中执行此操作。
for file in *-dev.example.com.cfg; do
mv "$file" "${file/%-dev.example.com.cfg/-prod.example.com.cfg}"
done
这不需要正则表达式,因此由于您使用的是 Linux,因此您可以rename
从 util-linux 使用。在 Debian 和 Ubuntu 等衍生产品上,该命令称为rename.ul
.
rename dev.example.com.cfg prod.example.com.cfg *.cfg
zsh 有 zmv,如果经常做这些事情可能会很方便http://zshwiki.org/home/builtin/functions/zmv