symlink函数创建一个符号链接。
#include <unistd.h> int symlink( const char *actualpath, const char *sympath ); 返回值:若成功则返回0,若出错则返回-1
该函数创建了一个指向actualpath的新目录项sympath,在创建此符号链接时,并不要求actualpath已经存在。并且,actualpath和sympath并不需要位于同一文件系统中。
因为open函数跟随符号链接,所以需要有一种方法打开该链接本身,并读该链接中的名字。readlink函数提供了这种功能。
#include <unistd.h> ssize_t readlink( const char *restrict pathname, char *restrict buf, size_t bufsize ); 返回值:若成功则返回读到的字节数,若出错则返回-1
此函数组合了open、read和close的所有操作。如果此函数成功执行,则它返回读入buf的字节数。在buf中返回的符号链接的内容不以null字符终止。