Repository navigation
Bulk Rename
Advanced rename (F11, toolbar Rename) renames the scanned files on disk with a stack of rename methods, previewing every new name before anything is renamed. It works on the file list of the Metadata workspace: set Input:, run Scan input (F5), then press F11. With an empty list, F11 opens the input picker.

- Choose a method in Method: and fill in its parameters. The preview already shows the method applied after the ones in the stack.
- Press Add to append it to the stack under Methods ({0}):.
- Repeat for further methods. Each method works on the name produced by the previous one.
- Read the preview: Original name and New name for every file, and the status line.
- Press Rename.
When the rename completes, the dialog closes and the workspace scans the input again, so the list shows the new names. Cancel closes the dialog without renaming.
Each entry of the stack shows a summary of the method, such as Replace: . -> or Add: "Bleach - " at 0, and the buttons Move up, Move down, Duplicate and Remove. The order matters: each method transforms the result of the one above it.
Rename applies the methods in the stack and is enabled when the stack has at least one method, at least one name changes, and the preview has no conflicts or errors.
Replaces text in the full file name, extension included.
| Parameter | Use |
|---|---|
| Search: | Text or regular expression to find. |
| Replace: | Replacement text. Empty deletes the match. With Use regex, $1, $2 insert the captured groups. |
| Case sensitive | Matches upper and lower case exactly. Off by default. |
| Use regex | Reads Search: as a regular expression. An invalid pattern shows "Invalid regex: {0}" above the parameters. |
Inserts text into the name, with the extension kept as it is.
| Parameter | Use |
|---|---|
| Text: | Text to insert. |
| Position: | Character index, from 0. A position past the end appends. |
| From end | Counts the position from the end of the name. |
Deletes part of the name, with the extension kept as it is. Mode: chooses By position or By pattern.
| Parameter | Use |
|---|---|
| Start: | By position: first character to delete, from 0. |
| Count: | By position: number of characters to delete. |
| From end | By position: counts Start: from the end of the name. |
| Pattern: | By pattern: text or regular expression to delete everywhere in the name. |
| Case sensitive | By pattern: matches case exactly. |
| Use regex | By pattern: reads Pattern: as a regular expression. |
Changes capitalization.
| Parameter | Options |
|---|---|
| Mode: | lowercase, UPPERCASE, Title Case |
| Scope: | Name only, Extension only, Full name |
Title Case lowercases the text and then capitalizes the first letter of each word. Letters after a digit stay lowercase, so BLEACH.S12E08 becomes Bleach.S12e08.
Builds the name from a pattern. The default pattern <Name>.<Ext> reproduces the current name.
| Tag | Value |
|---|---|
<Name> |
Current name without extension. |
<Ext> |
Extension without the dot. |
<Folder> |
Name of the folder containing the file. |
<Inc:start:step:pad> |
Counter: starts at start, adds step per file, pads with zeros to pad digits. Defaults: 1, 1, 1. |
<Date:format> |
Last modified date of the file, in a .NET date format such as yyyy-MM-dd. |
<Rand:min:max> |
Random number between min and max, inclusive. Defaults: 0 and 100. |
| Pattern | Gives |
|---|---|
<Inc:1:1:2> |
01, 02, 03 ... |
<Inc:214:1:3> |
214, 215, 216 ... |
<Inc:1:2:2> |
01, 03, 05 ... |
The counter follows the order of the scanned file list, as shown in the preview.
Removes characters from the ends.
| Parameter | Use |
|---|---|
| Chars: | Set of characters to remove, a single space by default. -_. removes any mix of spaces, hyphens, underscores and dots. |
| Location: | Start, End or Both. |
| Scope: | Name only, Extension only or Full name. |
Every scanned file appears with its Original name and New name. Changed rows are highlighted, and rows with a conflict or an error are marked; hovering a new name shows its error.
The status line reads {0} files, {1} changed, followed by the number of conflicts and errors when there are any:
| Part | Meaning |
|---|---|
| files | Files in the list. |
| changed | Files whose name changes. |
| conflicts | Two or more files of the same folder would get the same name. |
| errors | The new name is empty, contains characters the file system does not accept, or matches a file already on disk. |
A conflict usually means the stack removed what told the files apart, such as the episode number. Add <Inc:...> or <Name> to the pattern, or narrow the method.
Renaming runs in two passes: every file is first moved to a temporary name, then to its final name. Files can therefore swap names within the same batch, for example renumbering E01 to E02 while E02 becomes E03. When a file cannot be moved to its temporary name, the files already moved go back to their original names. Only the file names change; the content of the files stays as it is.
[SubGroup] Bleach - 366 [1080p][x265].mkv becomes Bleach - 366.mkv.
| # | Method | Settings |
|---|---|---|
| 1 | Remove | Mode By pattern, Pattern \[[^\]]*\], Use regex on |
| 2 | Trim | Chars -_, Location Both, Scope Name only
|
The first method deletes every bracketed group; the second removes the separators left at the ends.
Bleach.S12E08.1080p.BluRay.mkv becomes Bleach S12E08 1080p BluRay.mkv.
| # | Method | Settings |
|---|---|---|
| 1 | Replace | Search \.(?=.*\.), Replace (a space), Use regex on |
Replace works on the full name, so the pattern matches only dots followed by another dot, and the dot before the extension stays.
Four files that should become episodes 214 to 217.
| # | Method | Settings |
|---|---|---|
| 1 | New Name | Pattern Bleach.S12E<Inc:214:1:3>.<Ext>
|
Check in the preview that the list order matches the episode order.
BLEACH.S12E08.MKV becomes Bleach.S12e08.mkv.
| # | Method | Settings |
|---|---|---|
| 1 | New Case | Mode Title Case, Scope Name only |
| 2 | New Case | Mode lowercase, Scope Extension only |
366.mkv becomes Bleach - 366.mkv.
| # | Method | Settings |
|---|---|---|
| 1 | Add | Text Bleach - , Position 0
|
Bleach - 366 - WEBRip.mkv becomes Bleach - 366.mkv.
| # | Method | Settings |
|---|---|---|
| 1 | Remove | Mode By pattern, Pattern - WEBRip
|
To delete a fixed number of characters at the end, use By position with From end on.
Remux mode pairs files by the episode numbers in their names, compared as text, so S12E8 and S12E08 are different episodes. Pad the single-digit episodes on one side:
| # | Method | Settings |
|---|---|---|
| 1 | Replace | Search E(\d)(?!\d), Replace E0$1, Use regex on |
An E followed by a single digit becomes E0 plus that digit. See Remux wizard.
- Metadata workspace: scanning the files to rename
- Metadata presets: editing titles, languages and tags inside the files
- Remux wizard: how Remux pairs files by name