MDではディレクトリを作成しました。中にはディレクトリ名やパスを間違えて作ってしまい、エクスプローラーから削除した人はいないでしょうか?
もちろん、コマンドプロンプトでもディレクトリやファイルを削除することができます。
今回はディレクトリを削除する(ファイルを削除するコマンドは別にあります。)ためのコマンドRD(またはRMDIR)について勉強していきましょう。
RDはディレクトリを削除するコマンドです。コマンドプロンプトでのディレクトリやファイルの削除はWindowsと違って、ごみ箱といった特殊なフォルダに一時的に保存されることもありません。コマンドを実行するといきなり消えてしまい、あらかじめ準備をしていない限り、元の通りディレクトリを復活させるのは難しいので、注意が必要です。
それでは、まずRDコマンドの書式を確認しておきましょう。
書式:RD [スイッチ] [パス名]削除したいディレクトリ名
コマンド名は RDです。最低限必要なオプションとして「削除したいディレクトリ名」があります。とうぜんですが、この削除したいディレクトリ名はPCに実在しているディレクトリ名を指定します。また、パスをつけることでカレントディレクトリ以外に保存されているディレクトリを削除することもできます。
スイッチ一覧
| オプションの種類 | 機能 |
|---|---|
| /s | 指定したディレクトリとそのサブディレクトリを、その中のファイルも含めて全て削除する。 |
| /q | 「/s」オプションでディレクトリツリーを削除する際、確認メッセージを表示せずに削除する。主にバッチファイル(コマンドプロンプトで使用するプログラムファイル)内で利用する。 |
では、実際に使用してみましょう。まずRDを使うためには削除したいディレクトリが必要ですから、11.【MD,MKDIR】ディレクトリを作成するで勉強したMDコマンドを使用して削除用ディレクトリを作成しましょう。
今回はまず、コマンドプロンプトの練習用ディレクトリ「Application」をホームディレクトリに作成しました。
まずはMDコマンドでカレントディレクトリに「Application」を作成します。作成出来たら必ずDIRコマンドを使ってApplicationディレクトリが作成されているか確認しましょう。

>md Application
>dir

ディレクトリが確認出来たらカレントディレクトリを「Application」に移動させます。
>cd Application
「Application」に削除用ディレクトリ「rdtest」を作成します。もちろんDIRでディレクトリが作成されたか確認します。
>md rdtest
これで準備は整いました。では早速作ったばかりの「rdtest」を削除してみましょう。コマンド名を指定して、削除したいディレクトリ名(今回はカレントディレクトリにあるのでそのまま指定)を指定。エンターで実行されます。
>rd rdtest
実行した後はDIRコマンドで一覧を表示させて、本当に削除されているか確認しましょう。
>dir

これで、確かにディレクトリが削除されました。今削除した「rdtest」はどこを探しても出てきません。つまりWindowsでの操作のように、「ごみ箱」などどこかに移動されているわけでなく、本当に削除されているのです。
残念なRDコマンド
RDコマンドはスイッチを設定しない限り、空のディレクトリしか削除できません。例えば先ほどのrdtestに他のディレクトリやファイルが保存されていれば、それだけで削除できなくなってしまします。とても残念な仕様となっています。
解決方法は先に中のディレクトリやファイルを削除して、空にしてから削除するか、/sスイッチをつけて、中のディレクトリやファイルごと削除してしまいます。
最初の空にする解決方法は面倒すぎるので問題外として、後の中身ごと削除する方法は要注意です。Windowsでディレクトリを削除する場合、中が必要なければ特に注意を払うこともなく削除できると思います。これはいつでも元に戻せるからです。
RDで削除したディレクトリやファイルはもう戻っては来ません。誤って必要なファイルを削除してしまっても「後の祭り」なのです。
スイッチを使って空ではないディレクトリを削除する
「Application」ディレクトリに「rdtest」を再度作成しましょう。ヒストリー機能を使用すると簡単に作成できますし、先ほどの作業を思い出しながら作っていただくのもいいでしょう。
次にrdtestディレクトリ内にrdtext.txtを作成します。これにはメモ帳などでダミーファイルを作ってもよいのですが、今回はコマンドプロンプトの機能、「リダイレクト」機能を使って作ります。
>dir /s > rdtest\rdtext.txt
と入力して実行します。途中にある「>」記号は半角英数の「大なり」記号です。こう書くことによって、本来DIRの処理結果は画面に出力されるのですが、リダイレクト機能のおかげで、rdtestディレクトリ内にrdtext.txtという名前で保存されます。コマンドを実行したらDIRでファイルが出来たか確認をしておきましょう。

これでrdtestディレクトリには中身ができました。一応、スイッチなしでrdtestを削除しようとしてみましょう。
>rd rdtest

そうすると、「ディレクトリが空ではありません」と怒られてしまいます。そこで、/s湿地をつけてRDコマンドを実行します。
>rd /s rdtest
実行すると「rdtest、よろしいですか(Y/N)?」と聞かれますので、削除する時は「Y」を、削除しない時は「N」を入力し、エンターキーを押します。削除後、いつものように削除されているかDIRで確認します。

「Y」と答えた後、特になにもレスポンスがありません。コマンドプロンプトは正常に処理が終わったときはレスポンスを返さないのが普通です。・・・慣れましょう。
DIRコマンドで確認すると、確かに削除されています。
おまけ
今回はRDコマンドを勉強しました。スイッチのないRDコマンドは間違えて空ディレクトリを作ってしまった時くらいしか使い道のないコマンドでした。/sスイッチをつけると、中に何が入っていても削除してしまう困ったコマンドになっていました。
RDコマンドを使用する場合はパスやスイッチをしっかり確認してから実行するくらい慎重にしたほうがいいでしょう。

