回答:
findディレクトリツリー全体を再帰的に検索できるコマンドを使用するのがおそらく最も簡単です。たとえば、読み取り専用のファイルを検索したい場合は、次のように入力します。
find <specify location> -type f -perm -444
特定のユーザーに属するファイルの場合は、
find <location> -type f -user mike
実行可能ファイル(すべての場合)に使用できます
find <location> -type f -perm -777
実行可能ですべて読み取り専用の場合は、上記の例では777の代わりに555を使用します。また、置換することにより、グループに属しているファイルを検索することができます-user mikeのために-group mike。
検索語を否定して正反対を検索するには、次のような感嘆符を使用できます。
find <location> -type f ! -perm -444
注:パーミッションの前にダッシュを指定すると(例:)-perm -444、読み取り専用フラグを持つすべてのファイルが見つかりますが、444のファイルだけではありません。正確に444だけを検索するには、ダッシュを削除します(例:)-perm 444。
注2:-aforおよびand -oまたはor を使用して、アクセス許可の組み合わせを探すこともできます。たとえば、これらの権限を正確に見つけるには、次のように入力します。
find <location> -type f -perm 744 -o -perm 666
ディレクトリはで検索できます-type d。
man findその他の利用可能な順列については、を参照してください。
-perm -444ファイルではreadなく、アクセス許可を持つファイルを検索します(つまり、他のアクセス許可のみを read持ち、他のアクセス許可はありません)。
-444との違いについて言及するための+1444