フォルダの最初のレベルのサブフォルダにbash操作を適用する

フォルダの最初のレベルのサブフォルダにbash操作を適用する

次のフォルダ構造があるとしましょう。

parent1
   |----- subfolder1
              |--- x
              |--- y
   |----- subfoldern
              |--- x
              |--- y
parentn
   |----- subfoldern1
              |--- x
              |--- y
   |----- subfoldernn
              |--- x
              |--- y

親フォルダを入力として受け取り、最初のレベルのサブフォルダにいくつかの固定操作を適用するbashスクリプトが必要です。たとえば、

$> myScript parent1

これにより、最初のレベルのサブフォルダー(subfolder1とサブフォルダー)が表示され、呼び出しごとに固定された一連の作業が提供されます。たとえば、次のようになります。

  1. ls サブフォルダ 1
  2. du サブフォルダ 2

この機能を実装するbashスクリプトを提供できますか?

重要:タスクの1つが失敗すると、フォルダはスキップされ、スクリプトは次のフォルダに移動します。

ベストアンサー1

  • パターンの末尾にスラッシュを使用してのみディレクトリを繰り返すことができます。
  • コマンド間でコマンドを使用すると、最初の失敗時に一連のコマンドを中断させることができます&&

したがって、すべての内容は次のように要約されます。

for d in parent/*/ ; do ls "$d" && du "$d" ; done 

おすすめ記事