UNIX系OS ( Mac / Linux / FreeBSD )のシェルコマンドに関する各種メモ書き

unixであるディレクトリ以下のすべてのファイルを再帰的に権限変更(chmod)する

unixであるディレクトリ以下のすべてのファイルを再帰的に権限変更(chmod)するには以下のようにパイプを使って流し込みます

カレントディレクトリ以下のすべてのファイルの権限を(0666)にする

find ./ -type f -print0 | xargs -0 chmod 0666

カレントディレクトリ以下のすべてのディレクトリの権限を(0777)にする

find ./ -type d -print0 | xargs -0 chmod 0777

カレントディレクトリ以下のすべての( .log )ファイルの権限を(0666)にする

find . -name "*.log" -type f -print0  | xargs -0 chmod 0666

カレントディレクトリ以下のすべての .sqlite3 ファイルの権限を(0666)にする

find . -name "*.sqlite3" -type f -print0  | xargs -0 chmod 0666

find に `-print0xargsに-0` をつけることによってスペースを含むファイルも処理できるようにしています

・カレントディレクトリ以下のすべての templates_c ディレクトリの権限を(0777)にする

find ./ -name templates_c -type d -print | xargs chmod 0777

・カレントディレクトリ以下のすべての cache ディレクトリの権限を(0777)にする

find ./ -name cache -type d -print | xargs chmod 0777

関連エントリー

No.1064
12/31 13:44

edit

ファイル