Command line tool to rename multiple files at once.
Renamer
A bulk renaming tool for files.Features
- Rename one or several patterns in your files using the powerful Rust regex engine.
- Add an increment as a prefix or suffix to files.
Installation
Have a look at the releases page for pre-built binaries.
With Cargo.
$ cargo install renamer
Usage
USAGE: renamer [FLAGS] [OPTIONS]
FLAGS: -d, --dry-run Perform a dry-run. Do everything but the actual renaming. Implies verbose -f, --force Do not exit or ask for confirmation when overwriting files -g, --global Test the regular expression against all possible matches instead of only the first -h, --help Prints help information --ignore-invalid-files Ignores directories passed to the program as files. Useful for shell globbing -i, --interactive Ask for confirmation before overwrite. The program will otherwise exit unless --force is passed -V, --version Prints version information -v, --verbose Print operations as they are being performed
OPTIONS: -e, --regexp
ARGS:
Examples
Add a prefix or a file extension.
# Add a prefix
$ renamer '^=2020-07-18 ' img*
Add an extension
$ renamer '$=.bak' file1 file2
Change extension
$ renamer 'JPEG$=jpg' *.JPEG
Multiple patterns. Change extension and remove a prefix.
$ renamer 'JPEG$=jpg' -e '^someprefix=' *
Rearrange parts of files. The following describes the various ways to use capture groups, including named groups.
$ renamer --verbose '(?P<index>\d{2}\.) (.)\.(?P<ext>)=${index} Lady Gaga - $2.$ext' .mp3
- Chromatica I.mp3 -> 01. Lady Gaga - Chromatica I.mp3
- Alice.mp3 -> 02. Lady Gaga - Alice.mp3
- Stupid Love.mp3 -> 03. Lady Gaga - Stupid Love.mp3
- Rain On Me.mp3 -> 04. Lady Gaga - Rain On Me.mp3
- Free Woman.mp3 -> 05. Lady Gaga - Free Woman.mp3
- Fun Tonight.mp3 -> 06. Lady Gaga - Fun Tonight.mp3
- Chromatica II.mp3 -> 07. Lady Gaga - Chromatica II.mp3
- 911.mp3 -> 08. Lady Gaga - 911.mp3
- Plastic Doll.mp3 -> 09. Lady Gaga - Plastic Doll.mp3
- Sour Candy.mp3 -> 10. Lady Gaga - Sour Candy.mp3
- Enigma.mp3 -> 11. Lady Gaga - Enigma.mp3
- Replay.mp3 -> 12. Lady Gaga - Replay.mp3
- Chromatica III.mp3 -> 13. Lady Gaga - Chromatica III.mp3
- Sine From Above.mp3 -> 14. Lady Gaga - Sine From Above.mp3
- 1000 Doves.mp3 -> 15. Lady Gaga - 1000 Doves.mp3
Add digits to easily sort files. Useful if you were to flatten directory structures but still want your files nicely sorted.
$ renamer -v '^=' --prefix-increment 0201 Westworld01.mkv Westworld.S02E02.mkv Westworld3.mkv
Westworld01.mkv -> 0201_Westworld01.mkv
Westworld.S02E02.mkv -> 0202_Westworld.S02E02.mkv
Westworld3.mkv -> 0203Westworld_3.mkv
Also possible to add suffixes with --prefix-suffix.
Acknowledgements
Inspired greatly by the originalrename.pl. The aim is to have similar features but with faster execution time and a slightly more intuitive syntax for those not so familiar with regexes.