如何为目录路径中的每个目录设置权限
我正在网络服务器上创建一个我希望可执行的远程目录路径。我使用以下命令远程创建它:
ssh user@machine mkdir -pa/b/c/d/e/f
接下来,我希望能够 chmod 目录 a< /code>-
f
但避免在远程目录根目录上执行 chmod -r
。
是否有一种优雅的机制可以从 a/b/c/d/e/f
路径开始并执行有效的 chmod a+xa; chmod a+xa/b; chmod a+xa/b/c; ...
不解析每个 chmod?
I'm creating a remote directory path on a webserver that I'd like to be executable. I create it remotely with a command like:
ssh user@machine mkdir -p a/b/c/d/e/f
Next, I'd like to be able to chmod directories a
-f
but avoid doing a chmod -r
on the remote directory root.
Is there an elegant mechanism to start with the a/b/c/d/e/f
path and do an effective chmod a+x a; chmod a+x a/b; chmod a+x a/b/c; ...
without parsing out each chmod?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
可能是这样的:
Could be something like this:
有人认为您可能会尝试制作一个远程 bash 脚本,如下所示(目录名称应以空格分隔):
或者您可以将
umask
设置为umask 066
,这将设置您创建的任何内容的默认权限。请参阅此网站了解说明。One think you might try would be to make a remote bash script as follows (directory names should be separated by spaces):
Or you could set
umask
asumask 066
which will set the default permissions of anything you create. See this site for an explanation.您可以使用
find
命令you can use
find
command