LN(1)

NAME
ln - make links

SYNOPSIS
ln [-fhns] source_file [target_file]
[-fhns] source_file ... [target_dir]

DESCRIPTION
The ln utility creates a new directory entry (linked file) which has the same modes as the original file. It is useful for maintaining multiple copies of a file in many places at once without using up storage for the “copies”; instead, a link “points” to the original copy. There are two types of links; hard links and symbolic links. How a link “points” to a file is one of the differences between a hard or symbolic link.

The options are as follows:

-f  Unlink any already existing file, permitting the link to occur.

-h  If the target_file or target_dir is a symbolic link, do not follow it. This is most useful with the -f option, to replace a symlink which may point to a directory.

-n  Same as -h, for compatibility with other ln implementations.

-s  Create a symbolic link.

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 normally refer to directories and may not span file systems.

A symbolic link contains the name of the file to which it is linked. 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 source_file. If target_file is given, the link has that name; target_file 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 source_file.

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

SEE ALSO
link(2), lstat(2), readlink(2), stat(2), symlink(2), symlink(7)

HISTORY
A ln utility appeared in AT&T UNIX.