2017-10-14 93 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.."