C语言symlink()函数:建立文件符号连接
2016-07-13 08:52
585 查看
相关函数:link, unlink
头文件:#include <unistd.h>
定义函数:int symlink(const char * oldpath, const char * newpath);
函数说明:symlink()以参数newpath 指定的名称来建立一个新的连接(符号连接)到参数oldpath 所指定的已存在文件. 参数oldpath 指定的文件不一定要存在, 如果参数newpath 指定的名称为一已存在的文件则不会建立连接.
返回值:成功则返回0, 失败返回-1, 错误原因存于errno.
错误代码:
1、EPERM 参数oldpath 与newpath 所指的文件系统不支持符号连接。
2、EROFS 欲测试写入权限的文件存在于只读文件系统内。
3、EFAULT 参数oldpath 或newpath 指针超出可存取内存空间。
4、ENAMETOOLONG 参数oldpath 或newpath 太长。
5、ENOMEM 核心内存不足。
6、EEXIST 参数newpath 所指的文件名已存在。
7、EMLINK 参数oldpath 所指的文件已达到最大连接数目。
8、ELOOP 参数pathname 有过多符号连接问题。
9、ENOSPC 文件系统的剩余空间不足。
10、EIO I/O 存取错误。
范例
#include <unistd.h>
main()
{
symlink("/etc/passwd", "pass");
}
头文件:#include <unistd.h>
定义函数:int symlink(const char * oldpath, const char * newpath);
函数说明:symlink()以参数newpath 指定的名称来建立一个新的连接(符号连接)到参数oldpath 所指定的已存在文件. 参数oldpath 指定的文件不一定要存在, 如果参数newpath 指定的名称为一已存在的文件则不会建立连接.
返回值:成功则返回0, 失败返回-1, 错误原因存于errno.
错误代码:
1、EPERM 参数oldpath 与newpath 所指的文件系统不支持符号连接。
2、EROFS 欲测试写入权限的文件存在于只读文件系统内。
3、EFAULT 参数oldpath 或newpath 指针超出可存取内存空间。
4、ENAMETOOLONG 参数oldpath 或newpath 太长。
5、ENOMEM 核心内存不足。
6、EEXIST 参数newpath 所指的文件名已存在。
7、EMLINK 参数oldpath 所指的文件已达到最大连接数目。
8、ELOOP 参数pathname 有过多符号连接问题。
9、ENOSPC 文件系统的剩余空间不足。
10、EIO I/O 存取错误。
范例
#include <unistd.h>
main()
{
symlink("/etc/passwd", "pass");
}
相关文章推荐
- C语言remove()函数:删除文件或目录
- C语言unlink()函数:删除文件
- C语言link()函数:建立文件连接
- c++STL全排列
- c++的list vector deque
- c++对象模型之菱形继承
- 【C++ primer】第一章 快速入门 读书笔记
- 如何用 C++ 在 10 行内写出八皇后?
- 汉语编程、中文编程、国产C语言-习语言4714(2016)版下载及教程
- 国产C语言编译器,中文编程工具,习语言2016版完工
- CODE[VS] C++ 1160 蛇形矩阵
- 详谈C++虚函数表那回事(多重继承关系)
- 详谈C++虚函数表那回事(多重继承关系)
- C/C++ 图像处理(10)------相近图像の匹配
- 【C++笔记】不通过中间变量实现变量值的互换(int型)
- 结构体长度计算
- hdu-1016Prime Ring Problem(素数环 dfs)
- C语言指针的易错点
- 详谈C++虚函数表那回事(一般继承关系)
- 详谈C++虚函数表那回事(一般继承关系)