LN(1)

NAME
ln - make links

SYNOPSIS
ln [ -s ] name1 [ name2 ]
ln [ -s ] name ... directory
ln [ -f ] name ... directory
ln -c att=name1 ucb=name2 name3

DESCRIPTION
A link is a directory entry referring to a file; the same file (together with its size, all its protection information, etc.) may have several links to it. There are three kinds of links: hard links, symbolic links, and conditional symbolic links.

By default ln makes hard links. A hard link to a file is indistinguishable from the original directory entry; any changes to a file are effective independent of the name used to reference the file. Hard links may not span file systems and may not refer to directories, except the superuser can force a hard link to a directory with the -f option.

The -s option causes ln to create symbolic links. A symbolic link contains the name of the file to which it is linked, and is interpreted with respect to the directory in which it is created. Therefore, you must either cd(1) to the directory where the symbolic link is to reside (before creating the link), or you must specify the absolute pathname(s) of the linked-to file(s) (when creating the link). The referenced file is used when an open(2) operation is performed on the link. A stat(2) on a symbolic link will return the linked-to file; an lstat(2) must be done to obtain information about the link. The readlink(2) call may be used to read the contents of a symbolic link. Symbolic links may span file systems and may refer to directories.

Given one or two arguments, ln creates a link to an existing file name1. If name2 is given, the link has that name; name2 may also be a directory in which to place the link; otherwise it is placed in the current directory. If only the directory is specified, the link will be made to the last component of name1.

Given more than two arguments, ln makes links to all the named files in the named directory. The links made will have the same name as the files being linked to.

A conditional symbolic link is a symbolic link whose value depends on the current universe setting (see universe(1)). The -c option causes ln to create symbolic links. The values for the conditional symbolic link must be given, preceded by the corresponding universe identifier (`att=' or `ucb='). The values may be given in either order.

SEE ALSO
cp(1), link(2), mv(1), readlink(2), rm(1), stat(2), symlink(2)