我想确保/etc/file1和/etc/file2不超过644。我试过了

if [[ `stat /etc/file1 --format=%a | cut -b 1` -le "6" -a `stat /etc/file2 --format=%a|cut -b 1` -le 6 ]]; then echo "good"; else echo "bad"; fi;

但是我得到“bash:条件表达式中的语法错误”
bash:'-a'附近的语法错误
我的计划是重复三次(每个字节一次)。
我也不确定这两个测试是否正常工作,因为我无法让它们在测试之外运行。

最佳答案

假设“比666更允许”,你的意思是“有一个执行位集”,那么我相信

find $path -perm /111

做你想做的。
扩展到644权限使find命令类似于:
find $path -perm /100 -o \( -perm /044 -a -perm /033 \)

我想。
我觉得从所需的权限到find模式可能有一个聪明的方法,但我必须多考虑一下。

关于linux - 如何检查多个文件中的权限是否不超过某个特定级别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24663158/

10-12 17:17