Interactive rename tool
cargo install irename
Rename a bunch of files
# run renamer on all .txt files in some/dir
irename some/dir/*.txt
Execute in dry-run
mode
# run renamer on all .txt files in some/dir and only print generated commands w/o actual renaming
irename --dry-run some/dir/*.txt
Output of dry-run
mode can be piped
# generate rename commands and execute them by yourself
irename --dry-run some/dir/*.txt | parallel -n1
If no positional args are provided, the files list is read from stdin
# find files using your favorite tool (e.g. `fd`) and pipe the file list into renamer
fd \.rs | irename
P.S.: The app will exit with an error if there are some conflicting names.
It won't destruct your files as GNU rename
does
USAGE:
irename [OPTIONS] [FILES]...
ARGS:
<FILES>... files to rename. If none provided, the files list will be read from stdin
OPTIONS:
--dry-run only print shell commands w/o executing them
-h, --help Print help information
--regex <REGEX> Initial regex
--replace <REPLACE> Initial replacement string
-V, --version Print version information
Tab
- switch betweenregex
andreplacement
text input areasEnter
- execute renamingCtrl-c
- exitCtrl-g
- toggle 'global' flagCtrl-r
- toggle 'ignore case' flag
- Read input files paths from stdin if no positional args are supplied
- Help side-pane
- Match flags
- Files list scrolling with
Ctrl-d/Ctrl-u
- Highlight for conflicting names
- Full-path mode switch for editing the whole path instead of just filename
- Docs