Linuxでディレクトリを削除|rm・rmdirコマンドの使い方

Linuxでディレクトリをまるごと削除するにはどうすればいいの?
空のディレクトリのみ削除したい
ディレクトリの削除が失敗した場合の対処法を教えてほしい

Linuxではディレクトリを削除するためのコマンドが用意されています。しかし、用途によってディレクトリをまるごと削除したい場合や、ディレクトリの中身が存在する場合は削除したくない場合などがあると思います。

そこで、今回はディレクトリを削除する方法をパターン別に以下の内容で解説していきます。

  • rmコマンドで削除する方法
  • rmdirコマンドで削除する方法
  • ディレクトリが削除できない場合は?
  • ディレクトリを削除する際の注意点

Linuxでディレクトリを削除する方法について、わかりやすく解説していますのでぜひ参考にしてください。

この記事ではディレクトリの削除についてわかりやすく解説していますので、ぜひ使い方を覚えておきましょう!

Linuxでディレクトリを削除するには

Linuxでディレクトリを削除するには以下のコマンドがあります。

  • rmコマンド
  • rmdirコマンド

ここではそれぞれのコマンドの使い方について解説します。

rmコマンドの使い方

「rm」コマンドは通常ファイルを削除するときに使用しますが、オプション「-r」を使用することでディレクトリを削除することができます。

$ rm -r ディレクトリ名

以下の例では「/tmp/sample」にある「sub」ディレクトリをrmコマンドで削除しています。

$ rm -r sub

実行結果:
rm_image03

これでsubディレクトリとsubディレクトリに含まれるファイルやディレクトリ全てが削除されます。

「rm」コマンドについては以下の記事でも詳しく解説しています!

rmdirコマンドの使い方

「rmdir」コマンドを使用することでもディレクトリを削除することができます。

$ rmdir ディレクトリ名

前述した「rm -r」コマンドとの違いとして、削除対象のディレクトリにファイルやサブディレクトリが存在する場合は削除に失敗してしまいます。

$ rmdir test

実行結果:

$ rmdir test
rmdir: `test を削除できません: ディレクトリは空ではありません

そのため、「rmdir」コマンドは対象のディレクトリが空であることが前提です。

ディレクトリが削除できない場合

「rm -rf」「rmdir」コマンドなどで以下のようなメッセージが表示されて削除ができない場合、

$ rm -rf super
rm: super を削除できません: 許可がありません

現在のユーザーでは削除できる権限がありません。そのため、「su」コマンドでスーパーユーザー(管理者権限)でログインして削除コマンドを実行する必要があります。

「su」コマンドについては以下の記事でも詳しく解説しています!

ディレクトリを削除するときの注意点

「rm -rf」コマンドは指定したディレクトリを削除するのに便利ですが注意点もあります。

前述したとおり「rm -rf」コマンドを実行してしまうと対象のディレクトリやサブディレクトリまで全て削除されてしまいます。たとえば、スーパーユーザーで「rm -rf」コマンドを実行した場合、LinuxでOSを動かすために必要なファイルまでも誤って削除してしまう場合もありえます。

「rm」コマンドを実行するとWindowsやMacのように削除されたディレクトリがゴミ箱に移動するわけではなく完全削除されてしまいます。

そのため、基本的に復元もできなくなってしまいますので「rm」コマンドを実行するときは、本当に削除してよいディレクトリか?よく確認してから実行するようにしましょう。

Linuxについてもっと知りたい方へ

そもそもLinuxについて、


実はなんとなくしか理解していない…
Linuxを効率よく学習する方法が知りたい

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね。


【完全保存版】エンジニア監修!Linuxおすすめ入門書7選
更新日 : 2020年7月30日

【完全保存版】Linux入門サイトおすすめ7選
更新日 : 2019年9月11日

まとめ

ここでは、Linuxでディレクトリを削除する「rm」「rmdir」コマンドについて、

  • rmコマンドの使い方
  • rmdirコマンドの使い方
  • ディレクトリが削除できない場合
  • ディレクトリを削除するときの注意点

などについて解説しました。Linuxではコマンドで簡単にディレクトリを削除できますが、説明したように一度削除したディレクトリは復元ができません。

そのため、ディレクトリを削除するときは十分に注意しましょう。もし「rm」「rmdir」コマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね。

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

侍ブログ編集部

侍ブログ編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。
サービスページはこちら
ツイッターはこちら
フェイスブックはこちら

おすすめコンテンツ

いまならレッスン期間が2週間延長!この秋、プログラミングを学ぼう

転職成功で受講料0円!あなたもプログラミングを学んでエンジニアデビュー