Linuxでディレクトリを削除する方法|rmとrmdirの使い方と注意点

Linuxを使い始めたばかりのとき、ディレクトリの削除方法が分からずに困った経験はありませんか。Windowsのようにゴミ箱へドラッグするだけでは済まず、コマンドを正しく理解しないと、意図しないファイルまで削除してしまうリスクがあります。

Linuxでディレクトリを削除するには、主にrmコマンドとrmdirコマンドを使います。しかしこの2つは動作が異なり、使い方を誤ると重要なデータを失うことにもなりかねません。

本記事では、それぞれのコマンドの基本から具体的な使用例、よくあるエラーの対処法、安全に削除するためのコツまでを体系的に解説します。初めてLinuxに触れる方から、コマンドの使い分けを整理したい中級者の方まで、すぐに実践できる内容です。

  1. Linuxでディレクトリを削除する基本
    1. Linuxで使える削除コマンド
    2. ディレクトリ削除でよく使うrmとrmdir
    3. ファイル削除とディレクトリ削除の違い
      1. ディレクトリ内にファイルがある場合の注意点
      2. 削除後は基本的に元に戻せない
  2. rmコマンドでディレクトリを削除する方法
    1. rmコマンドとは
    2. rmでディレクトリを削除する基本構文
    3. rm -rでディレクトリを再帰的に削除する
      1. ディレクトリ内のファイルもまとめて削除できる
      2. サブディレクトリも含めて削除される
    4. rm -rfで確認なしに削除する方法
      1. -rオプションと-fオプションの意味
      2. rm -rfを使うときの危険性
      3. 削除対象のパスを必ず確認する
  3. rmdirコマンドでディレクトリを削除する方法
    1. rmdirコマンドとは
    2. rmdirの基本構文
    3. 空のディレクトリだけを削除できる
      1. ファイルが残っている場合はエラーになる
      2. 安全に空ディレクトリを削除したい場合に向いている
  4. rmとrmdirの違い
    1. 削除できる対象の違い
    2. 空ではないディレクトリを削除できるか
    3. 実務でよく使われるコマンドの違い
      1. 中身ごと削除したい場合はrm -r
      2. 空ディレクトリだけ削除したい場合はrmdir
  5. Linuxでディレクトリを削除する具体例
    1. 空のディレクトリを削除する例
    2. 中身があるディレクトリを削除する例
    3. 複数のディレクトリをまとめて削除する例
    4. 確認なしでディレクトリを削除する例
      1. rm -rfを使う前に確認すべきこと
      2. 誤削除を防ぐための実行前チェック
  6. Linuxでディレクトリ削除時によくあるエラー
    1. rmdirで「Directory not empty」が表示される
    2. 権限不足で削除できない
    3. 指定したディレクトリが存在しない
    4. パスの指定ミスで削除できない
      1. カレントディレクトリを確認する
      2. 絶対パスと相対パスを使い分ける
  7. Linuxでディレクトリを削除するときの注意点
    1. 削除したデータはゴミ箱に入らない
    2. 重要なファイルが含まれていないか確認する
    3. rm -rfは慎重に使う
    4. 管理者権限での削除は特に注意する
      1. sudo rm -rfを安易に実行しない
      2. ワイルドカード指定による誤削除に注意する
  8. 安全にディレクトリを削除するためのコツ
    1. 削除前にlsコマンドで中身を確認する
    2. pwdコマンドで現在位置を確認する
    3. 必要に応じてバックアップを取る
    4. 最初はrmdirやrm -iで慎重に削除する
      1. 確認メッセージ付きで削除する方法
      2. 作業ディレクトリを明確にしてから実行する
  9. Linuxディレクトリ削除の使い分けまとめ
    1. 中身ごと削除するならrm -r
    2. 強制削除するならrm -rf
    3. 空ディレクトリだけならrmdir
    4. 削除前の確認を習慣化する
  10. まとめ
    1. Linuxでディレクトリを削除する基本はrmとrmdir
    2. rm -rは中身ごと削除できる
    3. rmdirは空のディレクトリ削除に使う
    4. 削除操作は復元が難しいため慎重に行う

Linuxでディレクトリを削除する基本

Linuxで使える削除コマンド

Linuxでディレクトリやファイルを削除する際に使うコマンドは複数あります。代表的なものは以下のとおりです。

コマンド 主な用途
rm ファイルおよびディレクトリの削除
rmdir 空のディレクトリのみを削除

この2つが基本です。用途と動作の違いを理解することが、安全なディレクトリ操作の第一歩です。

ディレクトリ削除でよく使うrmとrmdir

rmはファイル削除を基本としたコマンドですが、オプションを付けることでディレクトリも削除できます。一方、rmdirはディレクトリ専用の削除コマンドで、空のディレクトリにのみ使用できます。

どちらを使うかは、削除したいディレクトリの状態(中身があるかどうか)によって決まります。

ファイル削除とディレクトリ削除の違い

Linuxでは、ファイルとディレクトリは別のオブジェクトとして扱われます。rmコマンドは標準ではファイルを対象としており、ディレクトリをそのままの構文で指定するとエラーになります。ディレクトリを削除するには専用のオプションや専用コマンドが必要です。

ディレクトリ内にファイルがある場合の注意点

ディレクトリの中にファイルやサブディレクトリが存在する場合、rmdirでは削除できません。rmに再帰的削除オプションを付けることで中身ごと削除できますが、その分リスクも高まります。実行前に中身を確認する習慣が重要です。

削除後は基本的に元に戻せない

Linuxでは削除したファイルやディレクトリはゴミ箱に入らず、原則として復元できません。Windowsのような「削除の取り消し」機能はなく、誤って削除したデータを取り戻すことは非常に困難です。削除操作は常に慎重に行う必要があります。

rmコマンドでディレクトリを削除する方法

rmコマンドとは

rmは「remove」の略で、ファイルやディレクトリを削除するLinuxの基本コマンドです。オプションを組み合わせることで、ディレクトリの再帰的削除や強制削除が可能になります。

rmでディレクトリを削除する基本構文

基本的な構文は以下のとおりです。

rm [オプション] 対象のディレクトリ名

オプションなしでディレクトリを指定した場合、エラーが表示されます。ディレクトリを削除するには必ず適切なオプションを付ける必要があります。

rm -rでディレクトリを再帰的に削除する

-rオプション(または-R)は「recursive(再帰的)」の意味で、ディレクトリとその中身をすべて削除します。

rm -r ディレクトリ名

ディレクトリ内のファイルもまとめて削除できる

rm -rを使うと、指定したディレクトリの中にあるファイルをすべて削除してからディレクトリ自体を削除します。中身の有無にかかわらず削除できる点がrmdirとの大きな違いです。

サブディレクトリも含めて削除される

再帰的削除では、ネストされたサブディレクトリも含めてすべて削除されます。複数階層にわたる構造でも一度のコマンドで削除できますが、それだけ影響範囲も広くなります。

rm -rfで確認なしに削除する方法

-rオプションと-fオプションの意味

-fは「force(強制)」の意味で、確認プロンプトを表示せずに削除を実行します。-rと組み合わせたrm -rfは、中身のあるディレクトリを確認なしで強制削除します。

rm -rf ディレクトリ名

rm -rfを使うときの危険性

rm -rfは非常に強力なコマンドです。確認なしでディレクトリとその中身を完全に削除するため、パスの指定を間違えると取り返しのつかない事態になります。特にrm -rf /rm -rf *のような指定は、システム全体やカレントディレクトリのすべてを削除する可能性があるため、絶対に慎重に扱う必要があります。

削除対象のパスを必ず確認する

rm -rfを実行する前に、対象のパスが正しいかを必ず確認してください。echoコマンドで対象を表示してから削除する方法や、lsで中身を確認してから実行する方法が有効です。

rmdirコマンドでディレクトリを削除する方法

rmdirコマンドとは

rmdirは「remove directory」の略で、ディレクトリを削除するための専用コマンドです。rmとは異なり、空のディレクトリにしか使えないという制約があります。この制約がかえって安全な削除を保証してくれます。

rmdirの基本構文

rmdir ディレクトリ名

複数のディレクトリを一度に指定することもできます。

rmdir ディレクトリA ディレクトリB

空のディレクトリだけを削除できる

rmdirは、中身が空のディレクトリのみを対象とします。ファイルやサブディレクトリが残っている場合は削除されず、エラーメッセージが表示されます。

ファイルが残っている場合はエラーになる

ディレクトリ内にファイルが1つでも存在すると、rmdirは「Directory not empty」というエラーを返して処理を中止します。これにより、誤って中身のあるディレクトリを削除してしまうリスクを防げます。

安全に空ディレクトリを削除したい場合に向いている

作業後に生成された空のディレクトリを整理したい場合や、削除対象を空のものだけに限定したい場合にrmdirは最適です。万が一ファイルが残っていてもエラーで止まるため、安全性が高いコマンドです。

rmとrmdirの違い

削除できる対象の違い

項目 rm rmdir
ファイルの削除 ×
空のディレクトリの削除 ○(-rオプション使用)
中身のあるディレクトリの削除 ○(-rオプション使用) ×
強制削除(確認なし) ○(-fオプション使用) ×

空ではないディレクトリを削除できるか

rmdirは空のディレクトリのみを対象とするため、中身があるディレクトリには使えません。中身ごと削除したい場合はrm -rを使います。

実務でよく使われるコマンドの違い

日常的なLinux作業では、rm -rrm -rfの方が使用頻度が高い傾向があります。一方、スクリプト内で「空であることを確認してから削除したい」場面ではrmdirが安全な選択肢になります。

中身ごと削除したい場合はrm -r

ディレクトリとその中のファイル・サブディレクトリをまとめて削除したい場合はrm -rを使います。実行前に必ずlsで中身を確認することを推奨します。

空ディレクトリだけ削除したい場合はrmdir

中身があるかどうか不確かな状況で誤削除を防ぎたい場合はrmdirを選ぶと安全です。エラーで止まる仕様が「安全装置」として機能します。

See also  Illustratorで背景色を設定・変更する方法|アートボードとオブジェクトの色管理

Linuxでディレクトリを削除する具体例

空のディレクトリを削除する例

testdirという空のディレクトリを削除する場合:

rmdir testdir

または:

rm -r testdir

どちらも機能しますが、空であることが確実ならrmdirの方が安全です。

中身があるディレクトリを削除する例

ファイルやサブディレクトリを含むprojectディレクトリを削除する場合:

rm -r project

実行前に以下で中身を確認します:

ls project

複数のディレクトリをまとめて削除する例

複数のディレクトリを一度に削除する場合はスペースで区切って指定します:

rm -r dir1 dir2 dir3

または空のディレクトリのみなら:

rmdir dir1 dir2 dir3

確認なしでディレクトリを削除する例

確認プロンプトを表示せずに削除する場合:

rm -rf ディレクトリ名

rm -rfを使う前に確認すべきこと

  • 削除対象のパスが正しいか
  • カレントディレクトリの位置は意図したとおりか
  • 削除してはいけないファイルが含まれていないか
  • ワイルドカードを使っている場合、対象範囲が想定内か

誤削除を防ぐための実行前チェック

実行前に以下のコマンドで状況を確認する習慣をつけましょう。

pwd

カレントディレクトリを確認してから:

ls -la 削除対象ディレクトリ

で中身を表示し、問題がなければ削除を実行します。

Linuxでディレクトリ削除時によくあるエラー

rmdirで「Directory not empty」が表示される

このエラーは、削除しようとしたディレクトリに中身が残っている場合に表示されます。

対処法:中身を先に削除するか、rm -rに切り替えます。

rm -r ディレクトリ名

権限不足で削除できない

「Permission denied」と表示される場合、現在のユーザーに削除権限がありません。

対処法:ファイルの所有者や権限を確認します。

ls -la

注意:安易にsudoを付けて解決しようとするのは危険です。権限が制限されている理由を理解してから対応してください。

指定したディレクトリが存在しない

「No such file or directory」というエラーは、パスの指定が誤っているか、すでに削除済みのディレクトリを対象にしている場合に表示されます。

対処法:lsでディレクトリの存在を確認してから実行します。

パスの指定ミスで削除できない

スペルミスや大文字・小文字の違いでパスが一致しない場合も同様のエラーが出ます。Linuxのファイルシステムは大文字・小文字を区別するため、TestDirtestdirは別のディレクトリとして扱われます。

カレントディレクトリを確認する

自分が今どのディレクトリにいるかを確認するには:

pwd

このコマンドで現在位置を把握してから、相対パスまたは絶対パスを正しく指定します。

絶対パスと相対パスを使い分ける

相対パスは現在位置からの経路、絶対パスは/から始まる完全な経路です。迷ったときは絶対パスを使う方がミスを防ぎやすくなります。

Linuxコマンドの使い方についてさらに詳しく知りたい方は、侍エンジニア「Linuxのrmコマンド使い方まとめ」も参考になります。

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

削除したデータはゴミ箱に入らない

Linuxのコマンドラインで削除したファイルやディレクトリは、Windowsのようにゴミ箱へ移動しません。rmコマンドを実行した瞬間、データは即座に削除されます。GUIのファイルマネージャーを使った削除とは根本的に異なる動作です。

重要なファイルが含まれていないか確認する

削除前に必ずls -laでディレクトリの中身を確認し、削除しても問題ないファイルのみが含まれているかをチェックします。特に隠しファイル(.で始まるファイル)の存在に注意が必要です。

rm -rfは慎重に使う

rm -rfは強力な削除コマンドです。一度実行すると復元が非常に困難なため、実行する前にパスと対象を二重確認することを習慣にしてください。

管理者権限での削除は特に注意する

sudo rm -rfを安易に実行しない

sudo rm -rfはシステムファイルも含めて削除できる最も危険な組み合わせのひとつです。特にsudo rm -rf /はシステム全体を破壊する可能性があります。管理者権限での削除は、本当に必要な場合のみ、対象を慎重に確認したうえで実行してください。

ワイルドカード指定による誤削除に注意する

*(ワイルドカード)を使った削除は影響範囲が広くなります。たとえばrm -rf /tmp/*/tmp内のすべてを削除します。ワイルドカードを含むコマンドは、lsで対象を確認してから実行する習慣をつけましょう。

安全にディレクトリを削除するためのコツ

削除前にlsコマンドで中身を確認する

削除を実行する前に、対象ディレクトリの中身を必ず確認します。

ls -la 削除対象ディレクトリ

-aオプションで隠しファイルも含めて表示されるため、見落としを防げます。

pwdコマンドで現在位置を確認する

相対パスで削除コマンドを実行する場合、カレントディレクトリの位置が想定と異なっていると誤削除につながります。

pwd

このコマンドで現在位置を確認してから削除コマンドを実行します。

必要に応じてバックアップを取る

削除対象に少しでも重要なデータが含まれている可能性がある場合は、事前にバックアップを取りましょう。cp -rコマンドで別の場所にコピーしてから削除するのが安全です。

cp -r 削除対象ディレクトリ バックアップ先パス

最初はrmdirやrm -iで慎重に削除する

Linuxに不慣れな段階では、rmdirまたはrm -iを使うことで誤削除のリスクを大幅に下げられます。

確認メッセージ付きで削除する方法

-iオプションを付けると、ファイルごとに削除確認を求めるプロンプトが表示されます。

rm -ri ディレクトリ名

各ファイルに対してyまたはnで応答できるため、誤削除を防ぐ安全な方法です。

作業ディレクトリを明確にしてから実行する

削除コマンドを実行する前に、pwdで現在位置を、lsで対象を確認し、削除する意図と一致していることを確かめてから実行する——この3ステップを習慣化するだけで、深刻な誤削除はほぼ防げます。

rmdirコマンドの詳しい動作と使用例については、エンジニア入門「Linuxのrmdirコマンド完全ガイド」も参考にしてください。

Linuxディレクトリ削除の使い分けまとめ

中身ごと削除するならrm -r

ファイルやサブディレクトリを含むディレクトリをまとめて削除したい場合はrm -rを使います。実行前にlsで中身を確認することが前提です。

強制削除するならrm -rf

確認プロンプトなしで素早く削除したい場合はrm -rfを使いますが、使用は慣れた作業者が対象を明確に把握している状況に限るべきです。

空ディレクトリだけならrmdir

中身が空であることが確実なディレクトリを削除する場合はrmdirが最も安全です。万が一中身があればエラーで止まるため、誤削除のリスクがありません。

削除前の確認を習慣化する

どのコマンドを使う場合でも、pwdls→削除実行の順で確認する習慣を身につけることが、Linuxを安全に扱う基本です。

状況 推奨コマンド
空のディレクトリを削除したい rmdir
中身ごとディレクトリを削除したい rm -r
確認なしで強制削除したい rm -rf(慎重に)
1ファイルずつ確認しながら削除したい rm -ri
複数の空ディレクトリをまとめて削除したい rmdir dir1 dir2

rmrmdirの違いと実務での使い分けについては、PJINテックブログ「rmとrmdirの違いを徹底解説」Qiita「Linuxのrm・rmdirコマンド使い分けガイド」も実務参考として活用できます。

Linuxコマンドをはじめとするデジタルスキルの解説は、kakiro-web.comでも幅広く公開しています。

まとめ

Linuxでディレクトリを削除する基本はrmとrmdir

Linuxでディレクトリを削除するには、rmrmdirの2つが基本コマンドです。それぞれ動作と対象が異なるため、状況に応じた使い分けが重要です。

See also  Illustratorで画像をトレースする方法|ラスターからベクターへの変換手順

rm -rは中身ごと削除できる

rm -rは再帰的削除オプションにより、ディレクトリ内のファイルやサブディレクトリをすべて含めて削除できます。-fオプションを加えたrm -rfはさらに強力で、確認なしの強制削除が可能です。

rmdirは空のディレクトリ削除に使う

rmdirは中身が空のディレクトリのみを削除します。ファイルが残っている場合はエラーで止まるため、誤削除を防ぐ安全なコマンドとして活用できます。

削除操作は復元が難しいため慎重に行う

Linuxのコマンドラインによる削除はゴミ箱を経由しません。一度削除したデータの復元は非常に困難です。削除前の確認、バックアップ、権限の把握を徹底し、特にrm -rfsudoの組み合わせには最大限の注意を払ってください。

  • 空のディレクトリ削除にはrmdirが安全
  • 中身ごと削除するにはrm -rを使う
  • 強制削除のrm -rfはパスを必ず確認してから実行する
  • sudo rm -rfは最も慎重に扱うべきコマンドのひとつ
  • 削除前にpwdlsで状況を確認する習慣をつける
Copied title and URL