Linux下link函数的使用

一、头文件

#include<unistd.h>

二、函数原型

int link(const char *oldname, const char *newname);

三、函数介绍

        

        在UNIX系统中,一个文件可能同时拥有多个文件名。也就是说多个不同名字的文件在文件系统中可能是同一个文件。当我们要复制一个文件时,并不是真正复制文件内容,只要另外建立一个文件名,然后将这个文件名链接到所要复制的文件就可以了,这种操作称为链接(link)。

        link()函数是以参数newname指定的一个不存在的文件名称来建立一个连接,连接到参数oldname指定的已存在的文件,如果newname是一个已经存在的文件或者oldname所指定的文件不存在都会造成连接失败。

        link()不可以跨越不同的文件系统来建立连接。

        返回值:成功返回0,失败返回 -1

四、代码示例

#include<stdio.h>
#include<unistd.h>

int main(int argc, char *argv[])
{
    if(3 != argc)
    {
        printf("reference error!\n");
        exit(0);
    }

    int res;
    res = link(argv[1], argv[2]);

    if(res)
    {
        printf("link error!\n");
    }

    return 0;
}

猜你喜欢

转载自blog.csdn.net/judgejames/article/details/83719276