多くのファイルを含むディレクトリがあります。一部のファイルには755
権限があり、他のファイルには権限があります644
。権限のある755
ファイルを644
。
find . -perm 755 -exec chmod 644 {}\;
しかし、結果としてディレクトリ自体に対する権限のみが変更され、再度変更した後もファイル権限は同じままになることがわかりました。私は何を逃したことがありませんか?
答え1
さて、問題を見つけたようです。一つはありそうです。強制スペースの間にあるので、{}
コマンド\;
は次のようになります。
find . -perm 755 -exec chmod 644 {} \;
代わりに:
find . -perm 755 -exec chmod 644 {}\;
また、ディレクトリ権限の変更の問題はフラグを追加することで解決できるため、-type f
次のようになります。
find . -type f -perm 755 -exec chmod 644 {} \;