トップレベル以下の多数のディレクトリを削除する

トップレベル以下の多数のディレクトリを削除する

同じ構造を持つ複数の異なるディレクトリでいっぱいのディレクトリがあるため、次のようになります。

top/A/Output/platform/..
top/B/Output/platform/..
top/C/Output/platform/..

など。レベルから始めて、topそのディレクトリの下のすべてのディレクトリを削除したいと思いますplatform

top/A/Output
top/B/Output
top/C/Output

誰かが私に命令をお勧めできますか?私はrhel7、bash 4.1.2を使用しています。

編集する:

私は1文字よりも複雑な名前を持つ「セカンダリ」ディレクトリをたくさん持っています。申し訳ありません。より明確に指摘しなければなりませんでした。

答え1

rm -rf top/?/Output/platform

または、2番目のレベルのディレクトリが1文字より長い場合(例ではA、B、またはC):

rm -rf top/*/Output/platform

答え2

man find正規表現パターンなどの追加オプションを確認してください。

find top -type d -name platform -print0 | xargs -0 rm -rf

答え3

次の方法で見つけることができます。

find top -path 'top/*/Output/platform' -delete

これにより、ドットで始まるファイルとディレクトリが削除されます。

次のコマンドは、アスタリスクを置き換えるとシェルがスキップするため、ドットで始まるファイルやディレクトリは削除しません。

rm top/*/Output/platform

関連情報