The file renaming utilities (renameutils for short) are a set of programs designed to make renaming of files faster and less cumbersome.
The file renaming utilities consists of five programs - qmv, qcp, imv, icp and deurlname.
The qmv ("quick move") program allows file names to be edited in a text editor. The names of all files in a directory are written to a text file, which is then edited by the user. The text file is read and parsed, and the changes are applied to the files.
The qcp ("quick cp") program works like qmv, but copies files instead of moving them.
The imv ("interactive move") program, is trivial but useful when you are too lazy to type (or even complete) the name of the file to rename twice. It allows a file name to be edited in the terminal using the GNU Readline library. icp copies files.
The deurlname program removes URL encoded characters (such as %20 representing space) from file names. Some programs such as w3m tend to keep those characters encoded in saved files.
The file renaming utilities are written in C by Oskar Liljeblad, and is free software licensed under terms of the GNU General Public License.
Note that these programs come with no warranty whatsoever. They should be considered beta quality although I have carefully tested them and verified the code. This means that I can not be responsible for any data loss caused by the file renaming utilities. If you are afraid that that is going to happen, run qmv in dummy mode first (see below).
The complete history of renameutils can be seen here.
The latest version of renameutils can always be downloaded by following this link:
These files, as well as older versions, are available in the renameutils file area.
Thanks to Steve Christensen, you can also find pre-built packages of renameutils for Solaris on Sunfreeware.com.
renameutils is mentioned on the following pages:
renameutils is copyright (C) 2001, 2002, 2004, 2005, 2007, 2008 Oskar Liljeblad.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
The source code of this project may contain files from other projects, and files generated by other projects, including:
Such files are licensed under the terms of the GNU General Public License or a license compatible with the GNU GPL (as listed on http://www.gnu.org/licenses/license-list.html). See each file for copyright details.
The Swedish translations in the po
directory may contain translations from other projects, including:
See the specific message file (PO file) for copyright of those messages.
The following programs are required to build renameutils:
GCC 2.95 or later
The GNU C Compiler is recommended, but other compilers might work.
GNU libintl
This is needed for localisation. If you don't have it, you can use the --disable-nls option with the configure script.
The following programs are required for proper operation of renameutils:
GNU Readline Library (libreadline) 2.1 or later
Both qmv and imv use readline.
The unix `mv' command
The imv program invokes `mv'.
GNU libintl
This is needed unless you disable NLS support (see above).
Compile the renameutils by running `configure' and then `make'. This should produce executables in the src directory, which can be used right away.
If you want to install the renameutils on your system, run `make install'. This will copy the executables and the man pages into the appropriate directories (usually /usr/local/bin and /usr/local/share/man/man1, respecively).
For further details regarding `configure' and `make', see the INSTALL file.
A list of options that each program accepts can be displayed by running it with the --help option:
qmv --help qcp --help imv --help icp --help deurlname --help
Please consult the manual page for each program for full usage information. These documents can usually be viewed this way:
man ./qcmd.1
or
man -l qcmd.1
To rename a file using imv, use
imv FILENAME
To rename files in the current directory using qmv, use
qmv
or use the interactive mode of qmv:
qmv -i
Enable the simulation mode of qmv by specifying the --dummy option. I use imv and qmv in my user menu in Midnight Commander. The following lines are in my ~/.mc/menu file:
q qmv qmv .
Q qmv wide qmv -owidth=120 .
r mv imv %f
The latest version of the file renaming utilities can be downloaded from
The author of the file renaming utilities and this document, Oskar Liljeblad, can be reached via email:
Please send bug reports, suggestions, ideas or comments in general to me.
The imv program defaults to -i
(--interactive
) unlike mv which defaults to -f
(--force
). This means that imv will ask before overwriting files.
The imv program trims the edited file name. This means that the destination file name cannot have leading or trailing whitespace.
If you use alias mv=imv
then you will only get the imv help and version number with mv --help
and mv --version
.
Please see the TODO document.