web-dev-qa-db-ja.com

ディレクトリの下のすべてのファイルをLinuxで読めるようにするにはどうすればよいですか?

特定のディレクトリ下のすべてのファイル(およびディレクトリ)を、各ファイルを単独でchmodすることなく読み取り可能にします。これを再帰的に行うオプションがある場合は素晴らしいでしょう(フォルダの下を見て、その下のすべてのファイルをchmod 666)

27
Rorchackh

man 3 chmodには、探している情報が含まれています。

chmod -R +r directory

-Rオプションは、chmodに再帰的に動作するように指示します。

34
user529758

ディレクトリにはリンクやバインドマウントが含まれる可能性があるため、findを使用すると、実行することと実行しないことを細かく制御できます。

find directory \( -type f -o -type d \) -print0 |
    xargs -0 chmod ugo+r

マウントポイントの下のパスを除外するには:

find directory -mount \( -type f -o -type d \) -print0 |
    xargs -0 chmod ugo+r

特定のファイル(サンプルの.htaccess)を除外するには:

find directory \( -type f -o -type d \) ! -name '.htaccess' -print0 |
    xargs -0 chmod ugo+r
9
F. Hauri
1
0x90