我运行了下面的命令,注意到它只会对查找结果的第一级(SubDir*)进行修改,而不会对子序列(ChildSubDir*)进行修改。我想问是否可以递归查找并使用 chmod 执行?
命令运行:
find ./to/path/ -type d -exec chmod 777 {} \;
目录:
DirsRoot
|-->SubDir1
| |-->ChildSubDir1
| |-->OtherFile1
|-->SubDir2
| |-->ChildSubDir2
| |-->OtherFile2
|-File1
|-File2
答案1
您可以递归地使用 chmod 而无需查找。它有-R
旗帜。就像是:
$ cd ./to/path
$ chmod -R 777 *
这将是chmod
所有文件。
如果您只想 chmod 目录,命令是:
find /to/path -type d -exec chmod 777 {} +
更多细节这里
答案2
我使用下面的命令,它有效。
find /to/path/ -type d -print0 | xargs -0 chmod 777