bash : パーミッションをまとめて変更

指定したディレクトリ以下のパーミッションをまとめて変更したくなることがあります。

ディレクトリだけ

指定したディレクトリにあるサブディレクトリも含めたディレクトリすべてを対象に処理を行います。
ここでは chmod 770 をすべてのディレクトリに行っています。

find /home/example/public_html -type d -print0 | xargs -0 chmod 770

ファイルだけ対象とする

指定したディレクトリにあるサブディレクトリも含めたファイルすべてを対象に処理を行います。
ここでは chmod 660 をすべてのファイルに行っています。

find /home/example/public_html -type f -print0 | xargs -0 chmod 660