LN(1) General Commands Manual LN(1)

# [NAME](#NAME)

ln - Make links between files.

# [SYNOPSIS](#SYNOPSIS)

**ln** \[OPTION]... \[-T] TARGET LINK\_NAME  
**ln** \[OPTION]... TARGET  
**ln** \[OPTION]... TARGET... DIRECTORY  
**ln** \[OPTION]... -t DIRECTORY TARGET...

# [DESCRIPTION](#DESCRIPTION)

Make links between files.

# [OPTIONS](#OPTIONS)

[**--backup**\[=*&lt;CONTROL&gt;*\]](#backup)

make a backup of each existing destination file

[**-b**](#b)

like --backup but does not accept an argument

[**-f**, **--force**](#f)

remove existing destination files

[**-i**, **--interactive**](#i)

prompt whether to remove existing destination files

[**-n**, **--no-dereference**](#n)

treat LINK\_NAME as a normal file if it is a symbolic link to a directory

[**-L**, **--logical**](#L)

follow TARGETs that are symbolic links

[**-P**, **--physical**](#P)

make hard links directly to symbolic links

[**-s**, **--symbolic**](#s)

make symbolic links instead of hard links

[**-S**, **--suffix** *&lt;SUFFIX&gt;*](#S)

override the usual backup suffix

[**-t**, **--target-directory** *&lt;DIRECTORY&gt;*](#t)

specify the DIRECTORY in which to create the links

[**-T**, **--no-target-directory**](#T)

treat LINK\_NAME as a normal file always

[**-r**, **--relative**](#r)

create symbolic links relative to link location

[**-v**, **--verbose**](#v)

print name of each linked file

[**-h**, **--help**](#h)

Print help

[**-V**, **--version**](#V)

Print version

&lt;*files*&gt;

# [EXTRA](#EXTRA)

In the 1st form, create a link to TARGET with the name LINK\_NAME. In the 2nd form, create a link to TARGET in the current directory. In the 3rd and 4th forms, create links to each TARGET in DIRECTORY. Create hard links by default, symbolic links with --symbolic. By default, each destination (name of new link) should not already exist. When creating hard links, each TARGET must exist. Symbolic links can hold arbitrary text; if later resolved, a relative link is interpreted in relation to its parent directory.

The backup suffix is '~', unless set with --suffix or SIMPLE\_BACKUP\_SUFFIX. The version control method may be selected via the --backup option or through the VERSION\_CONTROL environment variable. Here are the values:

none, off never make backups (even if --backup is given)  
numbered, t make numbered backups  
existing, nil numbered if numbered backups exist, simple otherwise  
simple, never always make simple backups

# [VERSION](#VERSION)

v(uutils coreutils) 0.12.0

2026-09-30

---

Document: ln(1) from uutils 0.12.0-r1 (Chainguard OS)
Source: https://github.com/uutils/coreutils
