A simple cli tool for batch renaming files and folders, written in Rust.
- π written in Rust, fast.
- π Available on PyPi, install via
pip
. - π§©
Windows
Linux
MacOS
support. - π
files
andfolders
support. - π 7 renaming methods provided.
β οΈ symlinks
areunsupported
for now!
pip install renify
# or
cargo install renify
For those new to Renify, consider using the following code for interactive mode:
renify -i <File or Folder Path>
Or you can use:
renify -i <File or Folder Path> --target file --method znum --nbits 5 --recursive false --start 1 -y
You can revert to the previous state of the modifications by using:
renify -i . --roll
You can get help from:
renify --help
- random: Sample a u8, uniformly distributed over ASCII letters and numbers: a-z, A-Z and 0-9.
9AFoh, wGRLC, knj9y, ...
- uuid: Uuid4.
de2662a9-fb02-4686-b556-0aca36c0e087
- time: Local time now.
2023-03-04-22-26-42-222655555
- num: Numbers start from
--start
(1 by default).1, 2, 3, ...
- znum: Numbers with left zero padding start from
--start
(1 by default).001, 002, 003, ...
- prefix: Add a prefix string to the file stem, along with a delimiter.
X.jpg => [--with][--delimiter]X.jpg
- append: Append a delimiter and a string after the file stem.
X.jpg => X[--delimiter][--with].jpg
Renify will set --indiscriminate false
to make sure that the file stems stay consistent. This means that if you have files with the same stems in the same folder, they'll still look the same even after you rename them. Certainly, you can use --indiscriminate
to treat each file as an independent entity without considering its relationship with other files.