uses linux;
Function SymLink(realname, symname:pathstr):Boolean;
После завершения вызова symlink создается файл symname, указывающий на файл realname. Если возникает ошибка, например, если файл с именем symname уже существует, то вызов symlink возвращает значение false. В случае успеха вызов возвращает истинное значение.
Пример использования SymLink:
Uses linux;
Var F : Text;
S : String;
begin
Assign (F,'test.txt');
Rewrite (F);
Writeln (F,'This is written to test.txt');
Close(f);
{ new.txt and test.txt are now the same file }
if not SymLink ('test.txt','new.txt') then
writeln ('Error when symlinking !');
{ Removing test.txt still leaves new.txt
Pointing now to a non-existent file ! }
If not Unlink ('test.txt') then
Writeln ('Error when unlinking !');
Assign (f,'new.txt');
{ This should fail, since the symbolic link
points to a non-existent file! }
{$i-}
Reset (F);
{$i+}
If IOResult=0 then
Writeln ('This shouldn''t happen');
{ Now remove new.txt also }
If not Unlink ('new.txt') then
Writeln ('Error when unlinking !');
end.
Если файл символьной ссылки открывается при помощи fdopen, то системный вызов fdopen корректно прослеживает путь к файлу realname. Если необходимо считать данные из самого файла symname, то нужно использовать системный вызов readlink.