我想以递归方式重命名文件夹/目录名,并在SO上找到this solution。但是此命令无效
find . -type f -exec rename 's/old/new/' '{}' \;
这是一个正确的命令吗?
答案 0 :(得分:2)
find . -depth -name '*a_*' -execdir bash -c 'mv "$0" "${0//a_/b_}"' {} \;
-depth
开关非常重要,以便在目录本身之前处理目录内容!否则你会遇到问题:)
。
对于带有空格或其他有趣符号的文件名,100%安全。