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

时间:2016-04-08 02:31:58

标签: bash

我想重命名主文件夹的所有子目录和文件 - 删除名称中的所有空格。

例如:

/MyMainFolder/New Folder
becomes
/MyMainFolder/NewFolder

/MyMainFolder/New Compressed Folder (Zip)
becomes
/MyMainFolder/NewCompressedFolder(Zip)

/MyMainFolder/New Folder/temp/Some Random Folder
becomes
/MyMainFolderser/NewFolder/temp/SomeRandomFolder

我提出了以下bash脚本以便这样做,但它似乎没有帮助 -

find ~/MyMainFolder/ -name '* *' -execdir rename " " "" {} +

1 个答案:

答案 0 :(得分:0)

find ~/MyMainFolder/ -depth -name '* *' -execdir rename " " "" {} +

我猜你需要一个深度,告诉find从重命名叶子开始。否则将首先找到“a a”,然后是“a a / b b”,将“a a”重命名为“aa”,然后找不到“a a / b b”,同时是“aa / b b”。