rmdir

rmdirは、UnixMS-DOS(互換OSや、OS/2Windows等を含む)の、ディレクトリを削除するコマンドである。"remove directory"の略。MS-DOS系では、rdという略称がエイリアスとなっているため、そちらが使われることが多い。POSIXシステムコールの1つでもある。

使用法

[編集]

以下のように削除したいディレクトリ名を指定する。

rmdir name_of_directory 

ここでname_of_directoryは削除したいディレクトリ1つの名前(パス)である。ディレクトリの中身は空でなければならない[注釈 1]。Unixではこのコマンドに-pのようなオプションがある。これは、そのディレクトリを削除した結果、もし親ディレクトリも空になっていたら親ディレクトリも削除する動作となる。

例として、

rmdir -p foo/bar/baz 

は最初にbaz/を、その後bar/を、そして最後にfoo/を削除する。つまりコマンド引数で指定したディレクトリツリー全体を削除する。

空ではないディレクトリを、その内容すべてごと再帰的に削除するにはrmコマンドの -r オプションを使う。例えば、

rm -r foo/bar/baz 

DOSでこのコマンドと同じ動作をするのはdeltreeである。Windowsでは以下のように/sオプションを指定する[1]

rd /s directory_name 

システムコール

[編集]

POSIXにおける関数プロトタイプ宣言は以下のような形式である[2]

#include <unistd.h>  int rmdir(const char *path); 

Microsoft Visual C++のCランタイムライブラリには、Windows APIを利用して実装された、類似のインターフェイスを持つ関数_rmdir()が定義されている[3]。グローバルスコープを持ち、アンダースコアで始まる命名規則が使われており、これは処理系のために予約された名前を使用していることを示している。POSIXと同名のシンボルとしてrmdirマクロも定義されているが、ISO標準ではないため、非推奨となっている[4]

脚注

[編集]

注釈

[編集]
  1. ^ 正確には、... だけでなければならない。

出典

[編集]

関連項目

[編集]

参照文献

[編集]

外部リンク

[編集]