]> git.ipfire.org Git - thirdparty/util-linux.git/blame - misc-utils/rename.1
Manual pages: order NOTES / HISTORY / BUGS / EXAMPLE consistently
[thirdparty/util-linux.git] / misc-utils / rename.1
CommitLineData
eb63b9b8
KZ
1.\" Written by Andries E. Brouwer (aeb@cwi.nl)
2.\" Placed in the public domain
3.\"
232dc924 4.TH RENAME 1 "June 2011" "util-linux" "User Commands"
eb63b9b8 5.SH NAME
0791a058 6rename \- rename files
eb63b9b8 7.SH SYNOPSIS
f736d385 8.B rename
f49ccec2
BS
9[options]
10.IR "expression replacement file" ...
eb63b9b8
KZ
11.SH DESCRIPTION
12.B rename
13will rename the specified files by replacing the first occurrence of
03b3d715 14.I expression
eb63b9b8 15in their name by
03b3d715
SK
16.IR replacement .
17.SH OPTIONS
2a45745f 18.TP
7ab71099
BS
19.BR \-s , " \-\-symlink"
20Do not rename a symlink but its target.
03b3d715 21.TP
7ab71099 22.BR \-v , " \-\-verbose"
deff4975 23Show which files were renamed, if any.
03b3d715 24.TP
f60d62af 25.BR \-n , " \-\-no\-act"
0849ff36 26Do not make any changes; add
0bb7e904 27.B \-\-verbose
0849ff36 28to see what would be made.
990bf1f0 29.TP
f60d62af 30.BR \-o , " \-\-no\-overwrite"
5bb92700 31Do not overwrite existing files. When
0bb7e904 32.B \-\-symlink
5bb92700 33is active, do not overwrite symlinks pointing to existing targets.
f60d62af 34.TP
eb4aea8a
M
35.BR \-i , " \-\-interactive"
36Ask before overwriting existing files.
37.TP
7ab71099
BS
38.BR \-V , " \-\-version"
39Display version information and exit.
5a2a8177 40.TP
7ab71099 41.BR \-h , " \-\-help"
449a215f 42Display help text and exit.
03b3d715 43.SH WARNING
961b0946
M
44The renaming has no safeguards by default or without any one of the options
45.B \-\-no-overwrite\fR,
46.B \-\-interactive
47or
48.B \-\-no\-act\fR.
49If the user has
990bf1f0
AR
50permission to rewrite file names, the command will perform the action without
51any questions. For example, the result can be quite drastic when the command
52is run as root in the /lib directory. Always make a backup before running the
53command, unless you truly know what you are doing.
16740b0c
M
54.SH INTERACTIVE MODE
55As most standard utilities rename can be used with a terminal device (tty in
56short) in canonical mode, where the line is buffered by the tty and you press
57ENTER to validate the user input. If you put your tty in cbreak mode however,
58rename requires only a single key press to answer the prompt. To set cbreak
59mode, run for example:
60.RS
61.PP
62.nf
1c4c6024 63sh \-c 'stty \-icanon min 1; "$0" "$@"; stty icanon' rename \-i from to files
16740b0c
M
64.fi
65.PP
66.RE
5a829806 67.SH EXIT STATUS
d6cf9e16
SK
68.RS
69.PD 0
70.TP
71.B 0
72all requested rename operations were successful
73.TP
74.B 1
75all rename operations failed
76.TP
77.B 2
78some rename operations failed
79.TP
80.B 4
81nothing was renamed
82.TP
83.B 64
84unanticipated error occurred
85.PD
86.RE
67e63c12
MK
87.SH EXAMPLE
88Given the files
89.IR foo1 ", ..., " foo9 ", " foo10 ", ..., " foo278 ,
90the commands
91.RS
92.PP
93.nf
94rename foo foo00 foo?
95rename foo foo0 foo??
96.fi
97.PP
98.RE
99will turn them into
100.IR foo001 ", ..., " foo009 ", " foo010 ", ..., " foo278 .
101And
102.RS
103.PP
104.nf
105rename .htm .html *.htm
106.fi
107.PP
108.RE
109will fix the extension of your html files.
110Provide an empty string for shortening:
111.RS
112.PP
113.nf
114rename '_with_long_name' '' file_with_long_name.*
115.fi
116.PP
117.RE
118will remove the substring in the filenames.
5a829806 119.SH SEE ALSO
eb63b9b8 120.BR mv (1)
86d62711 121.SH AVAILABILITY
601d12fb 122The rename command is part of the util-linux package and is available from
d673b74e 123https://www.kernel.org/pub/linux/utils/util-linux/.