繁体   English   中英

按名称查找文件夹并将其子文件夹的权限递归设置为755

[英]Find a folder by name and recursively set it's childrens folders permission to 755

我正在尝试通过管道发送find . -type d -name 'uploads'的结果find . -type d -name 'uploads' find . -type d -name 'uploads'到另一个查找函数中,然后查找所有子文件夹并设置许可权,但是它不接受它。

有人可以帮忙吗? 我想做的是找到一个名为“ uploads”的文件夹,所有子文件夹的权限都设置为755,所有文件都设置为777。

并不是特别优雅,但是可以使用while循环来完成工作(除非您的文件夹名称或名称中包含换行符,否则xargsparallel会是一个更好的选择)

find . -type d -name 'uploads' | while read d; do chmod -R 755 "$d"; done

...使用xargs,您只能执行单个命令,但这似乎就是您所需要的

find . -type d -name 'uploads' -print0 | xargs -0 chmod -R 755 

E:按照请求创建所有子目录755和文件777,while循环可以做到:

 find . -type d -name 'uploads' | while read d; do 
    find "$d/" -type d -print0 | xargs -0 chmod 755; 
    find "$d/" -type f -print0 | xargs -0 chmod 777; done

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM