フォルダーとそのすべてのサブフォルダーおよびファイルの権限を変更するにはどうすればよいですか?
これはフォルダーにのみ適用され/opt/lampp/htdocs
、その内容には適用されません。
chmod 775 /opt/lampp/htdocs
chmod 755
フォルダーの現在のすべての/opt/lampp/htdocs
コンテンツと、その下に将来作成される新しいフォルダー/ファイルに対して自動的に設定するにはどうすればよいですか?
ベストアンサー1
他の回答は、chmod -R 755
ツリー内のすべてのファイルとサブフォルダーにこれらの権限を設定するという点で正しいです。しかし、一体なぜそうするのでしょうか? ディレクトリの場合は意味があるかもしれませんが、すべてのファイルに実行ビットを設定するのはなぜでしょうか?
実際にやりたいことは、ディレクトリを 755 に設定し、ファイルをそのままにするか、644 に設定することだと思います。これには、コマンドを使用できますfind
。例:
すべてのディレクトリを 755 ( drwxr-xr-x
) に変更するには:
find /opt/lampp/htdocs -type d -exec chmod 755 {} \;
すべてのファイルを 644 ( -rw-r--r--
) に変更するには:
find /opt/lampp/htdocs -type f -exec chmod 644 {} \;
少し説明: (ありがとう@トベズ)
chmod 755 {}
find
各ディレクトリに対して実行されるコマンドを指定しますchmod 644 {}
find
各ファイルに対して実行されるコマンドを指定します{}
パスに置き換えられます;
セミコロンはfind
、これが実行すべきコマンドの終わりであることを示します。\;
セミコロンは逃げたそうでなければ、シェルによって解釈され、find