链接函数
// 基本概念
- 硬链接:其实是目录项的同义词,且不可以给分区、目录建立硬链接
- 符号链接:可以给跨分区、目录建立符号链接
// link函数
- int link(const char *oldpath, const char *newpath);
- 为某文件创建硬链接,本质是创建一个新的目录项
- 成功返回0,失败返回-1并设置errno
// unlink函数
- int unlink(const char* pathname);
- 功能:删除一个文件的目录项
- 若文件是符号链接,则直接删除符号链接
- 若文件是硬链接,硬链接数减1,当减至0时已经没有dentry与之对应,但该文件不会被马上释放,要等到所有打开该文件的进程和线程结束,系统才择机将文件释放,从某种意义上,unlink文件后,只是让文件有了被释放的条件
// symlink函数
int symlink(const char* oldpath,const char* newpath);
// readlink函数
ssize_t readlink(const char* path,char* buf,size_t bufsize);
// 功能:读符号链接
// remove函数
- int remove(const char* pathname);
- 删除一个文件或目录