The word bame come frome the portmenteau between batch and rename. Bame is a simple cross-plateform cli that'll help you rename several files at once.
bame can be installed using yarn or npm. It works for node version >= 8.
npm install -g bame
# or
yarn global add bame
Simply run bame
in the directory where the files you want to rename are located. Specify a regular expression with capturing groups (with parentesis) for the parts you want to keep while renaming. Then specify a string with the index of the capturing group you want to insert between braquets.
For example:
bame 'SerieName Episode (.*) Season (.*).mp4' 'SerieName - S{1}E{2}.mp4'
# SerieName Episode 1 Season 1.mp4 --> SerieName - S1E1.mp4
# SerieName Episode 2 Season 1.mp4 --> SerieName - S1E2.mp4
# SerieName Episode 3 Season 1.mp4 --> SerieName - S1E3.mp4
# SerieName Episode 4 Season 1.mp4 --> SerieName - S1E4.mp4
Details and optional parameters:
Usage: bame <inReg> <outReg>
Options:
-d, --no-dir Should not rename directories [boolean]
-q, --quiet Rename silently [boolean]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]
Examples:
bame "GoT Episode (.*) Season (.*)" "GOT.E{1}.S{2}"
You can also integarte bame in som code:
import { bame } from 'bame';
bame({
inReg: 'GoT Episode (.*) Season (.*)',
outReg: 'GOT.E{1}.S{2}',
cwd: process.cwd(),
options:{
renameDir: true,
verbose: true
}
});
Pull requests are welcome ! Feel free to contribute.
Coded with ❤️ by Corentin Thomasset.
The demonstartion gif has been generated using Terminalizer
This project is under the MIT license.