unlink

转自: http://blog.csdn.net/zhaozhanyong/archive/2010/05/17/5599858.aspx
Linux系统调用-- unlink函数详解



功能描述:

从文件系统中删除一个名称。如果名称是文件的最后一个连接,并且没有其它进程将文件打开,名称对应的文件会实际被删除。

用法:

#include

int unlink(const char *pathname);

参数:

pathname:指向需解除连接的文件名。

返回说明:

成功执行时,返回0。失败返回-1,errno被设为以下的某个值

EACCES:权能不足

EFAULT: 内存空间不可访问

EIO:发生输入输出错误

EISDIR:pathname索引的是目录

ELOOP :路径解析的过程中存在太多的符号连接

ENAMETOOLONG:路径名超出可允许的长度

ENOENT:路径名部分内容表示的目录不存在,或者是悬浮的连接

ENOMEM: 核心内存不足

ENOTDIR:路径名的部分内容不是目录

EPERM : 文件系统不支持文件或者目录的解除连接,也有可能是权限步允许

EROFS :文件系统只读

转自: http://topic.csdn.net/u/20101115/10/e89ae706-fea8-4667-89ad-670cc0ab48b6.html
unlink会直接删除你所能看到的文件名,但是如果此时文件是打开的,它并不会从磁盘上被删除,只有进程结束时才会真正从磁盘上删除。unlink的这种性质只能用来确保进程创建的temp file会被正确删除,不能像你这样使用所谓的文件锁。

你可能感兴趣的:(html,linux,.net,Blog)