mac パーミッションをファイルは664でディレクトリは775に全て設定する

  • 作成日 2023.01.20
  • mac
mac パーミッションをファイルは664でディレクトリは775に全て設定する

macのターミナル上でパーミッションをファイルは664でディレクトリは775に全て設定する手順を記述してます。「find」コマンドと「xargs」コマンドを使用します。

環境

  • OS macOS Monterey
  • SHELL /bin/zsh

パーミッションを設定

ファイルは664でディレクトリは775に設定するには、「find」と「xargs」で「chmod」を使用します。

仮に以下のような全て「777」にパーミッションを設定したディレクトリがあったとします。

% ls -lR

<出力結果>
total 0
drwxrwxrwx  4 admin  staff  128 Sep 14 09:27 bar
-rwxrwxrwx  1 admin  staff    0 Sep 13 14:58 foo.html
-rwxrwxrwx  1 admin  staff    0 Sep 13 14:58 foo.log
-rwxrwxrwx  1 admin  staff    0 Sep 13 14:58 foo.txt
drwxrwxrwx  2 admin  staff   64 Sep 13 14:57 hoge

./bar:
total 0
drwxrwxrwx  2 admin  staff  64 Sep 14 09:27 bar
-rwxrwxrwx  1 admin  staff   0 Sep 14 09:27 bar.html

./bar/bar:

./hoge:

このディレクトリ内全てのファイルとディレクトリのパーミッションを以下のコマンドを実行して変更します。

% find . -type d | xargs chmod -R 775 ; find . -type f | xargs chmod 664

確認してみます。

% find . -printf "%U %G %m %p\n"

<出力結果>
total 0
drwxrwxr-x  4 admin  staff  128 Sep 14 09:27 bar
-rw-rw-r--  1 admin  staff    0 Sep 13 14:58 foo.html
-rw-rw-r--  1 admin  staff    0 Sep 13 14:58 foo.log
-rw-rw-r--  1 admin  staff    0 Sep 13 14:58 foo.txt
drwxrwxr-x  2 admin  staff   64 Sep 13 14:57 hoge

./bar:
total 0
drwxrwxr-x  2 admin  staff  64 Sep 14 09:27 bar
-rw-rw-r--  1 admin  staff   0 Sep 14 09:27 bar.html

./bar/bar:

./hoge:

全て変更されていることが確認できます。