2017-10-14 102 views
1

我有一个非常具体的请求。我有一个包含大量文件的目录,所有文件都具有不同的权限。UNIX - 基于权限的grep文件

我想识别任何用户(其他用户组)都可以读取的所有文件,但我需要使用grep。 (我知道有比grep更好的方式,但这是一个特殊的请求)

我的目录名是testfiles。我在想以下几行:

ls /testfiles | grep -E <<insert more>> 

有人能告诉我吗?

+0

如果您有权访问GNU find,请查看'-perm'选项。 – Cyrus

+0

不幸的是,我无法访问那个&perm在我的环境中不起作用。 – DaveMac001

+0

[为什么*不*解析'ls'?](https://unix.stackexchange.com/questions/128985/why-not-parse-ls) – Cyrus

回答

1
ls -l testfiles | grep "^.r..r..r" 

在权限中检查用户,组和其他人是否都具有Read(r)权限。

1

你可以试试这个。 由于。 - 点代表单个字符

ls -l /testfiles | grep -E "^.r..r..r.."