链接文件的操作

来源:互联网 发布:javascript倒计时脚本 编辑:程序博客网 时间:2024/06/05 04:24

1.硬链接

(1)创建链接(link函数):

#include<inistd.h>

int link(const char *pathname1,const *pathname2);

通过函数创建一个新目录项pathname2,引用现存文件pathname1,如果pathname2已经存在,则返回出错;

硬链接要求pathname1和pathname2所指向的路径名应当在同一个文件系统中(注:只用超级用户才可以创建指向一个目录的新链接)。


(2)删除链接(unlink函数):

#include<unistd.h>

int unlink(const char *pathname);

(为了解除对文件的链接,需具备如下条件:拥有该文件,拥有该目录,具有root权限);


使用remove函数解除对一个文件或目录的连接(对于文件,其功能与unlink相同).



2.符号链接:对一个文件的间接指针 ,一般用于将一个文件或整个目录结构移到系统中其他某个位置。

(1)创建符号链接(symlink函数):

#include<unistd.h>

int symlink(const char *actualpath,const char *sympath);

函数创建了一个指向actualpath的新目录项sympath(不要求actualpath已经存在,并且actualpath和sympath不需要位于同一个文件系统中)


(2)打开链接本身(readlink函数——组合了open read close所有操作):

##include<unistd.h>

int readlink(const char *pathname,char *buf,int bufsize);

pathname 所要查看的链接

buf 字符串指针,获取的相关信息存储在相应缓冲区内



0 0
原创粉丝点击