[find] -perm でファイルのアクセス権限を指定して検索する

作成日: 2026年10月09日

find の -perm オプションを使用すると、アクセス権限(パーミッション)を条件にファイルを検索できます。

下記の例では、権限が 644 のファイルを検索します。

mkdir -p sample
printf 'public\n' > sample/public.txt
printf 'private\n' > sample/private.txt
chmod 644 sample/public.txt
chmod 600 sample/private.txt
find sample -type f -perm 644

実行結果は下記のとおりです。

sample/public.txt
  • -type f: 通常ファイルだけを検索します。
  • -perm 644: 権限が 644 と完全に一致するファイルだけを検索します。

644 は8進数で、所有者には読み取りと書き込み(6)、グループとその他のユーザーには読み取り(4)を許可する設定です。

-perm -600 のように数値の前に - を付けると、指定した権限をすべて含むファイルを検索できます。この場合、所有者に読み取りと書き込みの権限があれば、それ以外の権限が付いていても一致します。

-perm はファイルの権限ビットを確認するもので、ACL などを含む実際のアクセス可否を判定するものではありません。

参考

Shell command find