硬链接link
int link(const char *oldpath,const char *newpath);
–参数*oldpath:已有的文件路径。
–参数*newpath:新建的硬链接文件路径。
–返回值:成功返回0,错误返回-1。
实例:
#include <stdio.h>
//link函数头文件
#include <unistd.h>
int main(int argc,char *argv[])
{
int ret;
if (argc < 3)
{
printf("\nPlease input file path\n");
return 1;
}
//测试link函数
ret = link(argv[1],argv[2]);
if (ret)
{
printf("link Failed");
return 1;
}
printf("link %s to %s success!\n",argv[1],argv[2]);
return 0;
}
符号链接symlink
1、符号链接也叫软链接,symlink
2、man 2 symlink
软链接函数
int symlink(const char *oldpath,const char *newpath);
–参数*oldpath:已有的文件路径
–参数*newpath:新建的符号链接文件路径
–返回值:成功返回0,错误返回-1
实例:
#include <stdio.h>
//symlink函数头文件
#include <unistd.h>
int main(int argc,char *argv[])
{
int ret;
if (argc < 3)
{
printf("\nPlease input file path\n");
return 1;
}
//测试symlink函数
ret = symlink(argv[1],argv[2]);
if (ret)
{
printf("symlink Failed");
return 1;
}
printf("symlink %s to %s success!\n",argv[2]);
return 0;
}
解除链接unlink
int unlink(const char *pathname);
–参数*pathname:链接文件的路径
–返回值:成功返回0,错误返回-1
– unlink指向软链接,删除软链接;指向最后一个硬链接,相当于删除文件
实例:
#include <stdio.h>
//unlink函数头文件
#include <unistd.h>
int main(int argc,char *argv[])
{
int ret;
if (argc < 2)
{
printf("\nPlease input file path\n");
return 1;
}
//测试unlink函数
ret = unlink(argv[1]);
if (ret)
{
printf("unlink Failed");
return 1;
}
printf("unlink %s is success!\n",argv[1]);
return 0;
}