按名称查找文件夹并递归地将其子文件夹权限设置为 755
Find a folder by name and recursively set it's childrens folders permission to 755
我试图将 find . -type d -name 'uploads'
的结果通过管道传输到另一个查找函数中,然后查找所有子文件夹并设置权限,但它不接受它。
有人能帮忙吗?我想要做的是找到一个名为 'uploads' 的文件夹,并将所有子文件夹的权限设置为 755,将所有文件设置为 777。
不是特别优雅,但是一个 while 循环就可以完成这项工作(除非你的文件夹名称中有换行符或其他东西,在这种情况下 xargs
或 parallel
会是更好的选择)
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
我试图将 find . -type d -name 'uploads'
的结果通过管道传输到另一个查找函数中,然后查找所有子文件夹并设置权限,但它不接受它。
有人能帮忙吗?我想要做的是找到一个名为 'uploads' 的文件夹,并将所有子文件夹的权限设置为 755,将所有文件设置为 777。
不是特别优雅,但是一个 while 循环就可以完成这项工作(除非你的文件夹名称中有换行符或其他东西,在这种情况下 xargs
或 parallel
会是更好的选择)
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