我使用此命令查找具有给定模式的文件,然后将其重命名为其他文件
find . -name '*-GHBAG-*' -exec bash -c 'echo mv $0 ${0/GHBAG/stream-agg}' {} \;
运行此命令时,我看到一些类似的输出
mv ./report-GHBAG-1B ./report-stream-agg-1B mv ./reoprt-GHBAG-0.5B ./report-stream-agg-0.5B
但是最后,当我运行时ls,我看到了旧文件名。
ls
您正在回显’mv’命令,而不是实际执行它。改成:
find . -name '*-GHBAG-*' -exec bash -c 'mv $0 ${0/GHBAG/stream-agg}' {} \;