web-dev-qa-db-ja.com

ターミナルで空でないディレクトリを削除する方法は?

次のディレクトリを削除するにはどうすればよいですか?

入力しました:

rmdir lampp

このエラーが発生します:

rmdir: failed to remove `lampp': Directory not empty

ディレクトリ内のすべてのファイルを削除し、ディレクトリフォルダを削除するコマンドはありますか?

623
naveen

以下のコマンドを使用します。

rm -rf lampp

lamppディレクトリに含まれるすべてのファイルとフォルダーを削除します。

ユーザーがフォルダーを削除する権限を持っていない場合:

コマンドの先頭にSudoを追加します。

Sudo rm -rf folderName

それ以外の場合、Sudoがないと、アクセス許可が拒否されます。また、ディレクトリの削除中に-fを使用しないようにすることをお勧めします。

Sudo rm -r folderName

注:これは、ターミナルで削除するフォルダーと同じレベルに既にいる場合を想定しています。

Sudo rm -r /path/to/folderName

参考:-f-r-vの文字を使用できます:

  • -f =存在しないファイルを無視し、プロンプトを表示しない
  • -r =ディレクトリとその内容を再帰的に削除します
  • -v =何が行われているかを説明する
870
rm -R lampp

ただし、このような再帰的なコマンドには注意が必要です。意図したよりも多くを誤って削除してしまう可能性があるためです。

Enterキーを押す前に、どのディレクトリにいるか、コマンドを正しく入力したかどうかを常にダブルチェックすることをお勧めします。

より安全なバージョン

rm -R -i lampp

-iを追加すると、削除するたびにプロンプ​​トが表示されるため、少し安全になります。ただし、多くのファイルを削除する場合、これはあまり実用的ではありません。それでも、これを最初に試すことができます。

-foption:

多くの人は、-f-Rfまたは-rfに組み合わせて)を使用することを提案し、迷惑なプロンプトを取り除くと主張しています。ただし、通常は必要ないので、それを使用すると、おそらくdoが知りたい問題が抑制されます。使用するときに、引数に存在しないディレクトリまたはファイルが指定されていても警告は表示されません。rmは何も削除せずに単に失敗します。一般的なルールとして、最初に-fなしで試してください:引数に問題がある場合、気づくでしょう。書き込みアクセスなしでファイルに関するプロンプトが多すぎる場合は、-fで試してください。または、削除するファイルとディレクトリに対する完全なアクセス許可を持つユーザー(またはSudoを使用するスーパーユーザー)からコマンドを実行して、そもそもこれらのプロンプトが表示されないようにします。

94
thomasrutter

CLIモードでディレクトリを削除する方法はたくさんあります。どちらの方法に慣れているかによります。

rm -rvf /path/to/directory  
  • -r =ディレクトリとその内容を再帰的に削除します
  • -v =何が行われているのかを説明する
  • -f =存在しないファイルを無視し、プロンプトを表示しない

Linuxを初めて使用する場合は、コマンドのマニュアルページ( man rm )を使用して、オプションと精度を高めてください。

24
papseddy