REMOVE

Section: Linux Programmer's Manual (3)
Updated: 1994-07-13
Index JM Home Page roff page
 

名前

remove - 名前を削除し、可能であればその名前が参照しているファイルも削除する  

書式

#include <stdio.h>

int remove(const char *pathname);  

説明

remove() はファイルシステムからファイル名を削除する。 ファイルに対しては unlink(2) を、ディレクトリに対しては rmdir(2) を呼び出す。

もしその名前が ファイルへの最後のリンクで、かつ、どのプロセスもそのファイルを 開いていないなら、ファイルも削除する。ファイルの占めていた 領域は他で使うことができるようになる。

名前がファイルへの最後のリンクであっても、どこかのプロセスが そのファイルを開いているなら、ファイルの最後のファイル記述子 (file descriptor) が閉じられるまでファイルは存在し続ける。

名前が指しているのがシンボリックリンクなら、そのリンクを削除する。

名前が指しているのがソケット、fifo、デバイスなら、名前は削除されるが、 そのソケットなどを開いているプロセスはそのまま使い続けることができる。  

返り値

成功すれば 0 が返る。エラーなら -1 が返り、 errno に適切な値がセットされる。  

エラー

発生するエラーは unlink(2) および rmdir(2) と同じものである。  

準拠

C89, C99, 4.3BSD, POSIX.1-2001.  

注意

libc4 と libc5 においては、 remove() は unlink(2) の別名であった (従ってディレクトリを削除できなかった)。  

バグ

NFS プロトコルの根本的な不都合により、使用中のファイルが、 想定できない形で削除されることがありえる。  

関連項目

rm(1), link(2), mknod(2), open(2), rename(2), rmdir(2), unlink(2), mkfifo(3), unlink(8)


 

Index

名前
書式
説明
返り値
エラー
準拠
注意
バグ
関連項目

This document was created by man2html, using the manual pages.
Time: 04:31:59 GMT, November 19, 2007