link()以参数newpath指定的名称来建立一个新的连接(硬连接)到参数oldpath所指定的已存在文件。

本页面主要目录有关于link的:基本介绍等介绍

中文名

链接

外文名

link

词性

名词、及物动词、不及物动词

基本解释

(链状物的)环,节

基本介绍

如果参数newpath指定的名称为一已存在的文件则不会建立连接。

link()所建立的硬连接无法跨越不同文件系统,如果需要请改用symlink()。

在UNIX系统中,一个文件可以同时拥有多个文件名。

也就是我们想要复制一个文件时,并不必真正复制文件内容,只要另外建立一个文件名,然后将这个文件名链接到所要复制的文件就可以了,这种操作称为链接(link)。

这个函数使用格式如下:

int link(file1,file2) ;

各参数定义:

file1:原来文件名。

file2:另外复制的文件名。

ret_code:如成功,系统返回0给ret_code,否则,返回-1。

Code:

main(int argc,char *argv[])

{

int ret_code ;

if ( argc != 3 )

{

printf("sorry input error \n") ;

exit(1) ;

}

ret_code = link(argv[1],argv[2]) ;

if ( ret_code )

{

printf("link file error\n") ;

}

exit(0) ;

}

程序执行结果:

$cat t1.txt

a

b

abc

$ls t*txt

t1.txt

$a.out t1.txt t2.txt

$cat t2.txt

a

b

abc