再帰的にディレクトリのアクセス権だけを変更する

再帰的に、ディレクトリのパーミッションを変更するには、find とxargsを組み合わせて実行する。
(chmodの「-R」ではディレクトリとファイルの区別なく再帰的に権限変更してしまう)

例)カレントディレクトリ(カレントフォルダ)以下のディレクトリのアクセス権を775にする

 find ./ -type d -print | xargs chmod 775

findコマンドのtypeオプションでディレクトリ(d)のみを探し、それをxargsコマンドを使って、chmodに渡す。

例)カレントディレクトリ以下のファイルのアクセス権を664にする

 find ./ -type f -print | xargs chmod 664

findで探せるファイルであれば、この方法でいっぺんにアクセス権の変更ができる。

おまけ。

find のオプションに「-exec」があり、このオプションを使用しても同じことができる。
この「-exec」はmanによると、やっていることはxargsを呼び出しているだけとのこと。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする