Batch File Renamer (names only, never uploaded)
Load the names of your files, set a few rules and check the before/after list. Clashes are blocked before anything is renamed, and your files are never opened or uploaded.
This tool only ever sees file names. Your files are not opened, read or uploaded, and the page cannot rename anything on your computer: it shows a before/after preview and gives you a script to run yourself.
Drop files here or to load their names, or paste names below. Only the names are used.
Rules (applied in this order to the part before the extension)
Drag a row, use ▲ ▼, or focus a row's button and press Alt + ↑ / ↓ (Alt + Home / End for top or bottom) to put files in the order you want, like chapters in a story. File dates are read from your computer only when you choose or drop files; nothing is sent anywhere.
| # | Before | After | Status |
|---|
The scripts use mv -n / Rename-Item with exact names, never overwrite, and swap through temporary names when one new name is another file's old name. Run them in the folder that holds the files.
How it works
Choose files or drop them on the page to load their names, or paste a list of names, one per line. The page reads only the name text of each file, never what is inside, and it cannot rename anything on your disk by itself: it shows a before/after table and gives you a script to run after you have checked it.
Rules are applied in a fixed order to the part of each name before the extension: find and replace (plain text, or a regular expression with $1 groups), spaces, forbidden characters, letter case (lower, UPPER, Title, kebab-case, snake_case), then your prefix and suffix, then optional numbering. The extension is kept unless you ask for it to be lowercased. Numbers follow the order of the list, so set that first: sort A to Z naturally (2 before 10), Z to A, reverse, oldest or newest file first (from each file's modified date, only for files you chose or dropped), or put files in any order you like by dragging a row, using the ▲ ▼ buttons, or pressing Alt + ↑ / ↓ on a row. Undo order steps back through your changes.
Collision protection. Every row gets a status. A row is blocked if its new name is identical (ignoring upper and lower case, as on Windows and macOS) to another new name or to a file you are not renaming, if it is empty, if it contains characters Windows does not allow, ends with a dot or space, uses a reserved name like CON or NUL, or is over 255 bytes. Copy buttons stay disabled until nothing is blocked. You can also let the tool add -2, -3 to the later duplicates. See why batch renames overwrite files.
The scripts use mv -n (bash) or Rename-Item -LiteralPath (PowerShell), which refuse to overwrite, and rename through temporary names when a new name is another file's old name, so swaps and chains work. An undo script is available too. More in how to batch rename files safely. The tool cannot see other files in the folder, so a clash with one that is not in your list is stopped by the script rather than by the preview.
Questions
Are my files uploaded?
No. Only the file names are read in your browser, never the contents, and nothing is sent to a server. It works offline once the page has loaded.
Why does it give me a script instead of renaming the files?
Web pages are not allowed to rename files in your folders. A script you can read and run yourself is the safe way: you see exactly what will happen.
What counts as a collision?
Two files getting the same new name, a new name matching a file you are leaving alone, names that differ only by case, and names the system does not allow. Each is flagged before you can copy a script.
Does it handle swapping a.txt and b.txt?
Yes. When a new name is another file's current name, the script moves each file to a temporary name first and then to its final name.
Can I choose the order the numbers follow?
Yes. Drag rows, use the ▲ ▼ buttons or Alt + arrow keys, or sort A to Z, Z to A, reversed, or by file date. The numbering (for example Trip_001, Trip_002) always follows the order shown, and Undo order takes back a change. The file dates come from your own computer and are never sent anywhere.
How many names can I load?
Up to 500 at a time. Names beyond that are ignored with a notice.
Can I use regular expressions?
Yes. Tick the regular-expression box and use groups such as (\w+)_(\w+) with $2_$1 in the replacement. A broken pattern shows an error instead of changing anything.