サブフォルダを削除せずに親ディレクトリを削除するにはどうすればよいですか?

サブフォルダを削除せずに親ディレクトリを削除するにはどうすればよいですか?

例えば、

親ディレクトリに5つのディレクトリがあり、5つの子ディレクトリを削除せずに親ディレクトリのみを削除したいと思います。

現在私は次のコードを使用しています。

 mv parentFolder/* parentFolder/.. && rm -rf parentFolder

これより簡単な他のオプションはありますか?

ベストアンサー1

mv parentFolder/* parentFolder/..

その種類のファイルだけでなく、すべての(隠されていない)ファイルも移動します。目次

ディレクトリのみ移動zsh(コード短縮)

(){mv $1/{*(/),..} && rm -rf $1} parentFolder

または隠しアイテムを含めます。

(){mv $1/{*(D/),..} && rm -rf $1} parentFolder
  • (){..$1..} arg:パラメータ付き匿名関数(分解用parentFolder
  • {a,b}cshスタイル中括弧拡張、分解にも使用
  • (/):glob修飾子はディレクトリのみを選択します。これも可能です*/(この方法も機能しますbashが、ディレクトリへのシンボリックリンクも含まれます)。
  • (D/)Dドットファイル(名前で始まる隠しファイル.)用です。

おすすめ記事