link は既存ファイルへのリンクを作成します。symlink は既存ファイルへのシンボリックリンクを作成します。
関数は、次のように呼び出します。
|
status = link( name1, name2 ) |
|||
|
INTEGER*4 symlnk status = symlnk( name1, name2 ) |
|||
|
name1 |
character*n |
入力 |
既存ファイルのパス名 |
|
name2 |
character*n |
入力 |
ファイル name1 にリンクさせるパス名。 ファイル name2 は、既存ファイルであってはならない。 |
|
戻り値 |
INTEGER*4 |
出力 |
status=0: 正常 status>0: システムエラーコード |
例 1: link: ファイル tlink.db.data.1 に対して、data1 という名前のリンクを作成します。
demo% cat tlink.f
character*34 name1/'tlink.db.data.1'/, name2/'data1'/
integer*4 link, status
status = link( name1, name2 )
if ( status .ne. 0 ) stop 'link: error'
end
demo% f95 tlink.f
demo% ls -l data1
data1 : ファイルもディレクトリもありません
demo% a.out
demo% ls -l data1
-rw-rw-r-- 2 generic 2 8 月 11 日 08:50 data1
demo%
|
例 2: symlnk: ファイル tlink.db.data.1 に対して、data1 という名前のシンボリックリンクを作成します。
demo% cat tsymlnk.f
character*34 name1/'tlink.db.data.1'/, name2/'data1'/
INTEGER*4 status, symlnk
status = symlnk( name1, name2 )
if ( status .ne. 0 ) stop 'symlnk: error'
end
demo% f95 tsymlnk.f
demo% ls -l data1
data1 : ファイルもディレクトリもありません
demo% a.out
demo% ls -l data1
lrwxrwxrwx 1 generic 15 8 月 11 日 11:09 data1 -> tlink.db.data.1
demo%
|
参照: link(2)、symlink(2)、perror(3F)、および unlink(3F)
注意: パス名は、<sys/param.h> で定義されている MAXPATHLEN より長くすることはできません。