重命名目录和子目录中的所有文件

时间:2018-05-10 22:54:01

标签: bash

如何重命名目录和子目录中的文件? 我找到了这个程序,但我需要在子目录中更改文件。

for file in *@me01
do
  mv "$file" "${file/@me01/_me01}"
done
n@me01

n_me01

1 个答案:

答案 0 :(得分:0)

使用bash

shopt -s globstar

for name in **/*@me01; do
    mv "$name" "${name%@me01}_me01"
done

这会在globstar中启用bash shell选项,使**匹配路径名中的路径分隔符。

它还使用标准参数替换来删除找到的路径名最末端的@me01部分,并将其替换为_me01