xref: /freebsd/bin/mv/mv.1 (revision a5921bc3653e2e286715e6fe8d473ec0d02da38c)
1.\"-
2.\" Copyright (c) 1989, 1990, 1993
3.\"	The Regents of the University of California.  All rights reserved.
4.\"
5.\" This code is derived from software contributed to Berkeley by
6.\" the Institute of Electrical and Electronics Engineers, Inc.
7.\"
8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions
10.\" are met:
11.\" 1. Redistributions of source code must retain the above copyright
12.\"    notice, this list of conditions and the following disclaimer.
13.\" 2. Redistributions in binary form must reproduce the above copyright
14.\"    notice, this list of conditions and the following disclaimer in the
15.\"    documentation and/or other materials provided with the distribution.
16.\" 4. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\"	@(#)mv.1	8.1 (Berkeley) 5/31/93
33.\" $FreeBSD$
34.\"
35.Dd March 15, 2013
36.Dt MV 1
37.Os
38.Sh NAME
39.Nm mv
40.Nd move files
41.Sh SYNOPSIS
42.Nm
43.Op Fl f | i | n
44.Op Fl hv
45.Ar source target
46.Nm
47.Op Fl f | i | n
48.Op Fl v
49.Ar source ... directory
50.Sh DESCRIPTION
51In its first form, the
52.Nm
53utility renames the file named by the
54.Ar source
55operand to the destination path named by the
56.Ar target
57operand.
58This form is assumed when the last operand does not name an already
59existing directory.
60.Pp
61In its second form,
62.Nm
63moves each file named by a
64.Ar source
65operand to a destination file in the existing directory named by the
66.Ar directory
67operand.
68The destination path for each operand is the pathname produced by the
69concatenation of the last operand, a slash, and the final pathname
70component of the named file.
71.Pp
72The following options are available:
73.Bl -tag -width indent
74.It Fl f
75Do not prompt for confirmation before overwriting the destination
76path.
77(The
78.Fl f
79option overrides any previous
80.Fl i
81or
82.Fl n
83options.)
84.It Fl h
85If the
86.Ar target
87operand is a symbolic link to a directory,
88do not follow it.
89This causes the
90.Nm
91utility to rename the file
92.Ar source
93to the destination path
94.Ar target
95rather than moving
96.Ar source
97into the directory referenced by
98.Ar target .
99.It Fl i
100Cause
101.Nm
102to write a prompt to standard error before moving a file that would
103overwrite an existing file.
104If the response from the standard input begins with the character
105.Ql y
106or
107.Ql Y ,
108the move is attempted.
109(The
110.Fl i
111option overrides any previous
112.Fl f
113or
114.Fl n
115options.)
116.It Fl n
117Do not overwrite an existing file.
118(The
119.Fl n
120option overrides any previous
121.Fl f
122or
123.Fl i
124options.)
125.It Fl v
126Cause
127.Nm
128to be verbose, showing files after they are moved.
129.El
130.Pp
131It is an error for the
132.Ar source
133operand to specify a directory if the target exists and is not a directory.
134.Pp
135If the destination path does not have a mode which permits writing,
136.Nm
137prompts the user for confirmation as specified for the
138.Fl i
139option.
140.Pp
141As the
142.Xr rename 2
143call does not work across file systems,
144.Nm
145uses
146.Xr cp 1
147and
148.Xr rm 1
149to accomplish the move.
150The effect is equivalent to:
151.Bd -literal -offset indent
152rm -f destination_path && \e
153cp -pRP source_file destination && \e
154rm -rf source_file
155.Ed
156.Sh EXIT STATUS
157.Ex -std
158.Sh EXAMPLES
159Rename file
160.Pa foo
161to
162.Pa bar ,
163overwriting
164.Pa bar
165if it already exists:
166.Pp
167.Dl $ mv -f foo bar
168.Sh COMPATIBILITY
169The
170.Fl h ,
171.Fl n ,
172and
173.Fl v
174options are non-standard and their use in scripts is not recommended.
175.Sh SEE ALSO
176.Xr cp 1 ,
177.Xr rm 1 ,
178.Xr symlink 7
179.Sh STANDARDS
180The
181.Nm
182utility is expected to be
183.St -p1003.2
184compatible.
185.Sh HISTORY
186A
187.Nm
188command appeared in
189.At v1 .
190