web-dev-qa-db-ja.com

再帰的なchmodを実行して、ディレクトリ内のすべての.shファイルを実行可能にするコマンド?

ディレクトリ内のすべての.shファイルに対して再帰的なchmodを実行して、それらを実行可能にしようとしています

9
Arunava

これを可能にするには、findコマンドを使用して、.sh拡張子を持つすべてのファイルを検索し、見つかったそれぞれに対してchmodコマンドを実行します。

find /directory/of/interest/ -type f -iname "*.sh" -exec chmod +x {} \;

情報:

  1. -type:検索するファイルタイプ、ここでは「ファイル」
  2. -iname:名前の大文字と小文字を区別しない
  3. "*.sh":グロビング、findコマンドに「.sh」拡張子のファイルを検索するよう指示
  4. -exec chmod +x {}:これは、見つかった各ファイルに対してfindコマンドを実行するようchmodコマンドに指示します。各実行可能ファイルを作成する
  5. \;:コマンドの終了を示す
17
George Udosen