400

端末ウィンドウから:

コマンドを使用すると、rmファイルのみを削除できます。
コマンドを使用すると、rmdir空のフォルダーのみが削除されます。

ファイルなどを含むフォルダ内にファイルとフォルダがネストされたディレクトリがある場合、すべてのファイルとフォルダを削除する方法はありますか?

違いがある場合は、Microsoft DOS や Linux ではなく、端末から Mac Bash シェルを使用しています。

4

4 に答える 4

895
rm -rf some_dir

-r "recursive" -f "force" (確認メッセージを抑制)

気をつけて!

于 2010-04-15T01:26:30.477 に答える
76
rm -rf *

現在のディレクトリ内のすべて (フォルダーとファイル) を削除します。

しかし、注意してください!正しいディレクトリにいることが確実な場合にのみ、このコマンドを実行してください。

于 2010-04-15T01:27:30.307 に答える
18

はいあります。この-rオプションはrm、再帰的であること示し、その引数をルートとするファイル階層全体を削除します。つまり、ディレクトリが指定されている場合、その内容をすべて削除してから、実質的にrmdir.

知っておくべき他の 2 つのオプションは-i、 と-fです。 iインタラクティブ-iを表します。すべてのファイルを削除する前にプロンプ​​トが表示されます 。を表します。それは先に進み、尋ねることなくすべてを削除します。 より安全ですが、より高速です。正しいものを削除していることが確実な場合にのみ使用してください。これらは指定してもしなくてもかまいません。それは独立した設定です。rm-f-i-f-r

そしていつものように、スイッチを組み合わせることができます: rm -r -iis justrm -rirm -r -fisrm -rfです。

bashまた、学習していることは、OS X、Linux、FreeBSD などのすべての Unix OS に適用されることに注意してください。実際、 の構文は、すべてのUnix OSのほとんどすべてのシェルrmで同じです。OS X は、実際には BSD Unix システムです。

于 2010-04-15T01:31:54.620 に答える
4

一部のディレクトリとファイルを除いて、ディレクトリ内のすべてのファイルを削除する方法を探していました。私はfindを使ってそれを行う方法を考案しました:

find -E . -regex './(dir1|dir2|dir3)' -and -type d -prune -o -print -exec rm -rf {} \;

基本的に、正規表現を使用して結果から除外するディレクトリを選択し、残りのファイルを削除します。

于 2014-04-25T18:33:08.090 に答える