|
|
||
|---|---|---|
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
README.md
rmv: Renaming made easy with regex
rmv is a command-line tool that allows you to rename files in a directory using regular expressions. You can use it to match patterns in filenames and replace them with new patterns.
Installation
To install rmv, run the following command:
cargo install --git https://git.deadbsd.org/falso/rmv.git
Usage
To use rmv, you need to specify the path to the directory where the files to be renamed are located, a regular expression pattern to match against the filenames, and a replacement pattern for the matched filenames.
Here is an example usage:
$ rmv --path /path/to/files --pattern "S(\d+)E(\d+).*\.(...)" --replacement "Season \1 Episode \2.\3" --wildcard "*.mkv"
This will match all filenames in the directory that match the pattern "S(\d+)E(\d+).*.(...)" and replace them with the pattern "Season \1 Episode \2.\3". Only files with the ".mkv" extension will be considered.
mv "Not Warez - S01E16 - HDTV-720p.mkv" "Season 01 Episode 16.mkv"
mv "Not Warez - S01E17 - HDTV-720p.mkv" "Season 01 Episode 17.mkv"
mv "Not Warez - S01E18 - HDTV-720p.mkv" "Season 01 Episode 18.mkv"
mv "Not Warez - S01E19 - HDTV-720p.mkv" "Season 01 Episode 19.mkv"
mv "Not Warez - S01E20 - WEBDL-1080p.mkv" "Season 01 Episode 20.mkv"
mv "Not Warez - S01E21 - WEBDL-1080p.mkv" "Season 01 Episode 21.mkv"
Options
Here are the available options:
-i, --path <PATH>
Path to the directory where the files to be renamed are located
-s, --pattern <PATTERN>
Regular expression pattern to match against the filenames in the directory.
The pattern should contain match groups (expressed in parentheses). Example: "s(\d+)e(\d+).*\.(...)"
-r, --replacement <REPLACEMENT>
Replacement pattern for the matched filenames.
You can use `\1`, `\2`, etc. to reference the match groups in the pattern. Example: "Season \1 Episode \2.\3"
-w, --wildcard <WILDCARD>
Filename wildcard to filter the files to be renamed in the directory.
Use `*` to match any filename. For example, "*.mkv" will match all files with the ".mkv" extension.
[default: *]
-h, --help
Print help (see a summary with '-h')
-V, --version
Print version
License
This tool is licensed under the WTFPL. See the LICENSE file for details.