toolfree

批次重新命名

依照指定格式重新命名資料夾裡的所有檔案,需要 Chrome 或 Edge。檔案不會離開你的磁碟,重名也會在寫入前就被擋下。

在你的瀏覽器中執行

這個工具需要 File System Access API,只有 Chromium 系的瀏覽器才有——桌面版的 Chrome、Edge、Opera、Arc 和 Brave。Firefox 和 Safari 根本不允許網頁取得重新命名磁碟檔案的權限,所以沒有替代方案可以提供。下面的說明仍然可以讓你了解這個工具在做什麼。

只能在 Chrome、Edge 等 Chromium 瀏覽器上使用

這是這裡唯一一個不是每個瀏覽器都能用的工具,值得把原因說清楚。

要重新命名磁碟上的檔案,需要 File System Access API——它讓網頁能對你明確選定的 資料夾請求寫入權限。目前只有 Chromium 系的瀏覽器實作了它:桌面版的 Chrome、Edge、 Opera、Arc 和 Brave。

Firefox 和 Safari 明確選擇不實作。這不是可以繞過去的疏漏:網頁沒有別的方法能就地改掉 一個檔案的名字,所以沒有替代方案,也沒有什麼可以拿來頂替。在那些瀏覽器上,這一頁會直接 說明情況,而不是擺出一堆按了也沒用的控制項。

在任何瀏覽器上都沒有上傳。你選的資料夾是由瀏覽器直接開啟的,檔案的讀寫都發生在你自己的 磁碟上。

所有新檔名都在寫入前就算好了

批次重新命名最危險的失敗,是兩個檔案最後叫同一個名字。後面那個會覆蓋前面那個,原本的 檔案就消失了。

所以這裡會先把整份改名結果算成一張表,在動到任何一個檔案之前檢查完畢。如果有兩個檔案會 撞名,按鈕根本不會變成可按——預覽會把出問題的列標成紅色並說明原因。檔名含有檔案系統 不接受的字元時也一樣。

撞名檢查是不分大小寫的,因為 macOS 和 Windows 會把 Photo.jpgphoto.jpg 當成 同一個檔案,即使字串不同。只比對完全相同的字串,會判定這一對是安全的,然後毀掉其中一個。

命名格式

代號會變成
{name}原本的檔名,不含副檔名
{ext}副檔名,不含那個點
{n}流水號
{n:03}補零到三位的流水號
{i}在清單中的位次,一律從 1 開始

**副檔名會自動保留。**格式寫 holiday-{n}DSC0042.jpg 會變成 holiday-1.jpg ——你不需要記得加 .{ext},而且忘了加也不會把整個資料夾的副檔名都砍掉。只有當你想把副 檔名放在別的位置時,才需要自己寫 {ext}

**記得幫流水號補零。**一個有 120 個檔案的資料夾用 {n} 會產生 12……120,而 幾乎所有檔案管理員都會把 10 排在 2 前面。用 {n:03} 會得到 001002…… 120,在哪裡排序都正確。

當你改了起始值或間隔之後,{i}{n} 就不一樣了:{i} 永遠是清單中的位次,{n} 則是你設定的那個流水號。

尋找與取代

尋找與取代作用在展開格式之前的原檔名上,而且只作用在副檔名以前的部分——所以把 txt 取代掉,不會把 .txt 變成 .doc

預設是字面搜尋,IMG. 就是比對 IMG. 這四個字元,不會有別的解釋。勾選正規表示式 就會改用樣式比對,此時 . 代表任意字元,取代字串裡的 $1 代表第一個擷取群組:尋找 ^IMG_(\d+)$,取代為 photo-$1

這裡的「重新命名」實際上做了什麼

這個 API 沒有重新命名的操作,所以每個檔案都是複製成新檔名,再刪掉舊的。內容完全相同, 但有兩點和真正的重新命名不一樣:

檔案的處理順序與你的檔案管理員顯示的順序相同——依檔名排序,數字以數值比較——所以 {n} 會跟著你看得到的順序走。

建議先拿副本試一次

不是因為預覽不可靠,而是因為這樣做的成本是零,而且這是這裡唯一一個會改動你既有檔案的 工具。