xref: /netbsd-src/bin/ln/ln.1 (revision 1ffa7b76c40339c17a0fb2a09fac93f287cfc046)
1.\"	$NetBSD: ln.1,v 1.19 2003/02/25 10:34:38 wiz Exp $
2.\"
3.\" Copyright (c) 1980, 1990, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" This code is derived from software contributed to Berkeley by
7.\" the Institute of Electrical and Electronics Engineers, Inc.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\" 3. All advertising materials mentioning features or use of this software
18.\"    must display the following acknowledgement:
19.\"	This product includes software developed by the University of
20.\"	California, Berkeley and its contributors.
21.\" 4. Neither the name of the University nor the names of its contributors
22.\"    may be used to endorse or promote products derived from this software
23.\"    without specific prior written permission.
24.\"
25.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35.\" SUCH DAMAGE.
36.\"
37.\"	@(#)ln.1	8.2 (Berkeley) 12/30/93
38.\"
39.Dd December 26, 2002
40.Dt LN 1
41.Os
42.Sh NAME
43.Nm ln
44.Nd make links
45.Sh SYNOPSIS
46.Nm
47.Op Fl fhnsv
48.Ar source_file
49.Op Ar target_file
50.Nm
51.Op Fl fhnsv
52.Ar source_file ... target_dir
53.Sh DESCRIPTION
54The
55.Nm
56utility creates a new directory entry (linked file) which has the
57same modes as the original file.
58It is useful for maintaining multiple copies of a file in many places
59at once without using up storage for the
60.Dq copies ;
61instead, a link
62.Dq points
63to the original copy.
64There are two types of links; hard links and symbolic links.
65How a link
66.Dq points
67to a file is one of the differences between a hard or symbolic link.
68.Pp
69The options are as follows:
70.Bl -tag -width flag
71.It Fl f
72Unlink any already existing file, permitting the link to occur.
73.It Fl h
74If the
75.Ar target_file
76or
77.Ar target_dir
78is a symbolic link, do not follow it.
79This is most useful with the
80.Fl f
81option, to replace a symlink which may point to a directory.
82.It Fl n
83Same as
84.Fl h ,
85for compatibility with other
86.Nm
87implementations.
88.It Fl s
89Create a symbolic link.
90.It Fl v
91Cause
92.Nm
93to be verbose, showing files as they are processed.
94.El
95.Pp
96By default
97.Nm
98makes
99.Em hard
100links.
101A hard link to a file is indistinguishable from the original directory entry;
102any changes to a file are effective independent of the name used to reference
103the file.
104Hard links may not normally refer to directories and may not span file systems.
105.Pp
106A symbolic link contains the name of the file to
107which it is linked.
108The referenced file is used when an
109.Xr open  2
110operation is performed on the link.
111A
112.Xr stat  2
113on a symbolic link will return the linked-to file; an
114.Xr lstat  2
115must be done to obtain information about the link.
116The
117.Xr readlink  2
118call may be used to read the contents of a symbolic link.
119Symbolic links may span file systems and may refer to directories.
120.Pp
121Given one or two arguments,
122.Nm
123creates a link to an existing file
124.Ar source_file  .
125If
126.Ar target_file
127is given, the link has that name;
128.Ar target_file
129may also be a directory in which to place the link;
130otherwise it is placed in the current directory.
131If only the directory is specified, the link will be made
132to the last component of
133.Ar source_file  .
134.Pp
135Given more than two arguments,
136.Nm
137makes links in
138.Ar target_dir
139to all the named source files.
140The links made will have the same name as the files being linked to.
141.Sh SEE ALSO
142.Xr link 2 ,
143.Xr lstat 2 ,
144.Xr readlink 2 ,
145.Xr stat 2 ,
146.Xr symlink 2 ,
147.Xr symlink 7
148.Sh STANDARDS
149The
150.Nm
151utility conforms to
152.St -p1003.2-92 .
153.Pp
154The
155.Fl v
156option is an extension to
157.St -p1003.2-92 .
158.Sh HISTORY
159A
160.Nm
161utility appeared in
162.At v6 .
163