rmコマンド|ファイル・ディレクトリの削除【Linux】

※本サイトにはプロモーション・広告が含まれています。

(最終更新月:2022年9月)

✔このような方へ向けて書かれた記事となります

「Linuxのrmコマンドについて知りたい」

「rmコマンドでディレクトリ(フォルダ)を削除する方法は?」

「rmコマンドでできること全て知りたい!」

✔当記事を通じてお伝えすること

  • rmコマンドの基礎知識
  • rmコマンドのオプション一覧
  • rmコマンドで注意すること
  • rmコマンドを使っているアプリ実例

当記事を最後までご覧いただければ、rmコマンドの基礎知識がわかるだけでなく、アプリ開発に使用している具体例までご覧いただけます

created by Rinker
¥2,970 (2024/03/29 09:50:11時点 楽天市場調べ-詳細)
LINUXコマンドを極めよう!

筆者プロフィール

筆者プロフィールアイコン

【現職】プロダクトマネージャー

【副業】ブログ(月間17万PV)/YouTube/Web・アプリ制作

「プログラミング × ライティング × 営業」の経験を活かし、30後半からのIT系職へシフト。当サイトでは、実際に手を動かせるWebアプリの開発を通じて、プログラミングはもちろん、IT職に必要な情報を提供していきます。

【当ブログで紹介しているサイト】

当サイトチュートリアルで作成したデモ版日報アプリ

Django × Reactで開発したツール系Webアプリ

✔人に見せても恥ずかしくないコードを書こう

「リーダブルコード」は、わかりやすく良いコードの定義を教えてくれる本です。

  • 見るからにきれいなコードの書き方
  • コードの分割方法
  • 変数や関数の命名規則

エンジニアのスタンダートとすべき基準を一から解説しています。

何回も読むのに値する本なので、ぜひ手にとって読んでみてください。

rmコマンドとは?

rmコマンドはファイルやフォルダ(ディレクトリ)を削除するLinux OSのコマンドです。

コマンドの構成は以下のようになります。

rm -オプション ファイル(ディレクトリ)

具体的にファイルとディレクトリを削除するコマンドを見ていきます。

実際にターミナルを開いておこなう際は、消して良いフォルダ内でおこなうようにしてください。

rmコマンドで消すと元に戻らないので注意が必要です!

ファイルの削除

ファイルを削除するコマンドは以下のとおり。

rm ファイル1 ファイル2 ・・・

たとえば、「sample1.txt」を削除するときはこのようになります。

rm sample1.txt

ディレクトリ(フォルダ)を削除

ディレクトリを削除するには、「-r」オプションを使用します。

rm -r ディレクトリ1 ディレクトリ2 ・・・

たとえば、「sample1」「sample2」の2つを削除する場合はこのとおりです。

rm -r sample1 sample2

現在のディレクトリ内の全てを削除する

全て消えてしまうのを了承のうえ、コマンドを入力してください。

全て消したい場合は以下のとおりです。

rm -r *

「rm *」コマンドではディレクトリの削除ができません。

rmコマンドのオプション一覧

rmのコマンド一覧を見ていきましょう。

  • 強制実行のオプション: -f
  • 確認メッセージの表示: -i
  • 確認メッセージの表示②:-I(大文字のアイ)
  • ディレクトリの削除: -r
  • 空のディレクトリを削除: -d
  • 実行内容を表示する: -v
  • 複数のオプションを同時に使う

以下のファイルが入っているディレクトリにいるとします。

$ ls
dir1  dir2  dir3  sample1.txt  sample2.txt

「sample1.txt」「sample2.txt」がファイル、「dir1」「dir2」「dir3」がディレクトリです。

強制実行のオプション: -f

-f をつけると、ファイルが見つからない場合もエラーメッセージが出てこないようになります。

たとえば、-fオプションのあるなしではいかのようになります。

-f をつけない場合

$ rm sample3.txt
rm: 'sample3.txt' を削除できません: そのようなファイルやディレクトリはありません

-f をつける場合

$ rm -f sample3.txt

エラーメッセージが出てきません。

確認メッセージの表示: -i

-i オプションをつけると、削除実行前に確認メッセージが表示されます。

$ rm -i sample2.txt
rm: 通常の空ファイル 'sample2.txt' を削除しますか? 

「y」で削除、「n」で削除しない、となります。

$ rm -i sample2.txt
rm: 通常の空ファイル 'sample2.txt' を削除しますか? y
$ ls
dir1  dir2  dir3  sample1.txt

「y」で削除が実行されています。

確認メッセージの表示②:-I(大文字のアイ)

-I オプションも、確認メッセージを表示します。

小文字「i」のときと違いは、3つ以上のファイル、もしくはディレクトリごと削除する場合にメッセージが表示されます。

一つのファイルを削除するときは、メッセージは出てきません。

$ rm -I sample1.txt

3つ以上のファイルもしくは、ディレクトリだとメッセージが出てきます。

$ rm -rI dir3
rm: remove 1 argument recursively? y

ディレクトリの削除: -r

-rオプションは、ディレクトリを削除するためのものです。

この場合、ディレクトリ内のファイルも全て削除されるので注意しましょう。

$ rm -r dir2

空のディレクトリを削除: -d

-dオプションは、指定したディレクトリが空の場合に削除するためのものです。

空でないディレクトリを指定するとメッセージが出てきて削除ができません。

$ rm -d dir4
rm: 'dir4' を削除できません: ディレクトリは空ではありません

実行内容を表示する: -v

-vオプションは、実行したことをコメントに残すためのものです。

たとえば以下のように-vオプションをつけると、メッセージが表示されます。

$ rm -v sample5.txt
'sample5.txt' を削除しました

複数のオプションを同時に使う

rmコマンドのオプションは、アルファベットを連続して入力すれば、複数同時に使えます。

使い方は以下のとおりです。

rm -オプション1オプション2・・・ ファイルなど

具体的には以下のとおりです。

$ rm -rv dir4
'dir4/sample4.txt' を削除しました
removed directory 'dir4'

「-r」と「-v」オプションを同時に使う場合は、「-rv」となります。

rmコマンドの注意点

rmコマンド使用の際の注意点は、実行した削除を元に戻すことはできない、ことです。

そのためには以下のような対策をしましょう。

  • 「-i」オプションで、事前確認を徹底
  • 「-v」オプションで、実行結果を確認
  • 「-f」オプションは、強制的に実行されるので控える

rmコマンドの実用例

こちらでは、PythonでLinuxOSを操作するコマンドの例をご覧いただきます。

folder_name = f"{settings.MEDIA_ROOT}/resized/{slug}"
os.system(f"rm -rf {folder_name}")

一度作成したフォルダを削除するようPythonのosモジュールと組み合わせて、rmコマンドを実行しています。

OSモジュールについての解説はこちらです。

まとめ:rmコマンドは、オプションを駆使して使いこなそう

当記事の内容をまとめます。

  • rmコマンドとは、LinuxOSのターミナル上でファイルやディレクトリを削除するもの
  • オプションを使うことで、ディレクトリを削除したり、確認メッセージを表示させたりできる
  • rmコマンドは、消したものを元に戻せないので、気をつけて使おう

ターミナルのコマンドは使いこなせば、とても簡単にファイル・フォルダ操作ができます。

興味がある方はUdemyの講座もおすすめです。

icon
icon

タイトルとURLをコピーしました