【Linux】rmコマンドでディレクトリを削除する

Linuxを勉強したい人向け シェル/bash

こんにちは。

普段はIT業界についてのブログを執筆してるエンジニアです。
» 参考:プログラマーの年収は200万円以下です【IT業界の残酷な成功法則】

今回は、Linuxについての解説記事です。

rmコマンドでディレクトリを削除したい人

rmコマンドでディレクトリを削除したい人
「rmコマンドでディレクトリを削除しようとすると、XXX: is a directoryというエラーメッセージが出て、ディレクトリを削除できません。どうすればディレクトリを削除できますか?

こんな悩みを解決します。

この記事を書いている私はIT業界歴12年、うちサーバエンジニア歴6年、年収1,000万円ちょっとの金融系エンジニアです。IRIXやSolarisなどのUnixやmac、Linuxなど様々なUNIX系環境を扱ってきました。

これまでの経験を踏まえ、コマンドの解説に留まらず実務視点で利用方法を記事にしました。お役にたちましたら幸いです。

本記事で扱うのはLinux/Macのrmコマンドです

本記事では、LinuxまたはMac環境を前提にしています。それ以外のUNIX環境では一部の動作が異なることがあります。

本記事の内容

1. rmの-rを使ってディレクトリを削除する

ディレクトリを削除する場合、rmの-rオプションを使います。

rm -r 《削除対象のディレクトリ》

2. ディレクトリを削除する例

ディレクトリを作成した直後、rmコマンドを使ってこのディレクトリを削除する例を示します。

$ mkdir DIR
$ ls -ld DIR
drwxr-xr-x  2 root  staff  64  7 27 17:22 DIR
$ rm DIR
rm: DIR: is a directory ← -rオプションがないとエラーになる
$ rm -r DIR
$ ls -ld DIR
ls: DIR: No such file or directory ← rm -rで対象ディレクトリ(DIR)を削除できた 

削除対象のディレクトリに入っているファイルも一緒に削除されます

$ mkdir DIR
$ ls -ld DIR
drwxr-xr-x  2 root  staff  64  7 27 17:22 DIR
$ touch DIR/file1.txt
$ ls -l DIR/*
-rw-r--r--  1 root  staff  0  7 27 17:27 DIR/file1.txt
$ rm -r DIR
$ ls -ld DIR
ls: DIR: No such file or directory ← rm -rでDIR/file1.txtも一緒に削除された

3. 運用業務上の注意点

rm -rは非常に便利なコマンドですが、ディレクトリ内のファイルも一緒に消えてしまうので注意しましょう。より丁寧に運用するには、まずディレクトリ内のファイルを確認し、退避または削除した後、rmdirコマンドディレクトリを削除します。この場合、rmdirの仕様によりディレクトリが空でないとエラーとなるため、想定外にファイルを消してしまうといったミスを防ぐことができます。

おわりに

今回は以上です。rmコマンドの-rオプションを使ってディレクトリごと削除する手順について解説しました。実務等で利用する場合の参考になりますと幸いです。

Blog TOP  Linuxコマンドを勉強したい人向け|Linuxの使い方 記事まとめ

Linux&Linuxコマンドを勉強したい人向けの記事もくじ

用語解説・技術一般

  "UNIXとLINUX"の違いについて解説します
  CUIとGUIの違い・特徴について解説します

サーバリソースを確認するコマンドの使い方

  【Linux】CPU使用率を確認する3つの方法を解説します
  【Linux】topコマンドで,CPU消費の原因を特定する方法
  【Linux】ps実行時に-efオプションを付ける理由について
  【Linux】メモリ使用率を確認する|容量・空きの確認も
  【Linux】ディスク容量を確認する|ディスク容量監視も

ファイル操作に関するコマンドの使い方

  【Linux】ファイルの行数をカウントする方法を解説
  【Linux】文字コード変換ならiconvコマンド1択です
  【Linux】/dev/nullを、エンジニアが使う2つの目的
  【Linux】findのexecオプションの使い方とその注意点
  【Linux】findの結果から圧縮ファイルを作るコマンド
  【Linux】hostsの場所はどこ?→/etc/hostsにあります
  【Linux】touchコマンドで,時刻更新&空ファイル作成

Linux管理者用コマンドの使い方

  【Linux】再起動コマンド(shutdown)の使い方と注意点

よく使う便利なコマンドの使い方

  【Linux】改行なしでechoコマンドを使う時の -nオプション
  【Linux】sleepコマンドの使用例と注意点について解説する
  【Linux】rmコマンドでディレクトリを削除する方法を解説
  【Linux】ファイルを削除するコマンド2選【rm以外もあり】
  【Linux】awkの区切り文字を指定する,-Fオプションを解説
  【Linux】sedで文字列の置換をするeオプションを解説する
  【Linux】dateコマンドのフォーマットとその便利な使い方
  【Linux】大文字から小文字に変換する方法【小文字から大文字も】

シェルの便利機能

  【Linux】コマンド履歴を検索する【Ctrl+r】