他のユーザーによってアーカイブされたアーカイブがあり、ダウンロードした後、自動的に、抽出されたファイル内のファイルシステムのブランチを変更して、読み取りアクセス権を取得したいと考えています。(アーカイブの作成方法は変更できません)。
私はこのスレッドを調べました:chmod:実行権限をすでに持っているファイルにのみ再実行権限を再帰的に追加する方法。
ディレクトリには元々複数のフラグがありますが、すべて間違ったフラグで、次のように表示されます。
drwx------
d---r-x---
drwxrwxr-x
dr--r-xr--
これらは私がこれまでに発見したほんの一部ですが、それ以上になる可能性もあります。
find
x
権限のないディレクトリを検索しようとするとエラーが発生するため、に渡されませんchmod
。私がこれまで行ってきたことは、親ディレクトリの権限を手動で変更してから、子ディレクトリに移動して、それらに対して同じことを行うことです。しかし、これは多くの手作業です。これを自動的に行う方法はありませんか?
すなわち、私は今それをやっている方法:
行う:
$ chmod -R +x
$ chmod -R +r
エラーが出なくなるまで
$ find -type f -exec chmod -x {} +
しかし、もっと良い方法があるはずです。