use*_*538 6 command-line find chmod xargs
我试图使用以下chmod
文件夹和文件:
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
Run Code Online (Sandbox Code Playgroud)
但我想知道:
如何在一行中使用find
和排除目录.
和..
哪种方法更好,find -exec
或者xargs
?
mou*_*iel 10
是使用find
还是xargs
强制?
如果没有,您可以使用:
chmod -R u=rwX,go=rX *
Run Code Online (Sandbox Code Playgroud)
Sherlock got (1), for (2)xargs
通常更可取,因为它允许更合理的语法和更少的 shell 调用开销。请注意find 和 xargs 的-print0
和-0
选项,因为带有空格和特殊字符的路径可能会搞砸工作。
对于一次性运行,差异实际上并不重要,除非您正在修改一棵巨大的树。如果您经常这样做以将其形式化为脚本,我会使用 xargs。