介紹 Windows 大量檔案批次重新命名的各種方法,並提供實用的範例。
在 Windows 中如果想要一次更改大量檔案的檔案名稱,有好多種方式,以下是各種批次更改檔案的操作方式以及實際範例。
檔案總管除了以手動更改單一檔案的名稱之外,也可以將多個檔案選取後,一次修改多個檔名。
Step 1
按住 Ctrl 或 Shift 鍵,再用滑鼠選擇要修改檔名的檔案。若要直接選擇所有檔案,可以使用 Ctrl + A 快速鍵。
Step 2
按下滑鼠右鍵,在右鍵選單中選擇「重新命名」。
除了從右鍵選單中選擇「重新命名」之外,也可以直接按下 F2 快速鍵來重新命名檔案。
Step 3
輸入新的檔案名稱。
Step 4
這樣檔案總管就會將所有的檔名改為新的名稱,並且自動加上編號。
若要使用命令提示字元來更改檔名,首先要開啟命令提示字元,並切換至檔案所在目錄,最快的做法就是直接在檔案總管中啟動命令提示字元。
Step 1
在檔案總管的位址列中,直接輸入 cmd
然後按下 Enter 鍵。
Step 2
在檔案總管中直接開啟命令提示字元,其預設路徑就會自動設定為目前所在的目錄,接著即可執行更改檔案名稱的指令了。
在命令提示字元中,要更改檔名可以使用 ren
指令,以下是一些範例。
若要將所有的 JPG 圖檔(*.jpg
)保留原檔案名稱的前三個字母,然後再加上 -new-name.jpg
做為新的檔案名稱,可以執行:
ren *.jpg ???-new-name.jpg
執行後的結果會像這樣:
如果有許多的檔案名稱太長,就可以執行類似這樣的指令,只保留前面幾個字母:
ren *.* ?????.*
這樣就可以只保留原檔名的前五個字母,讓檔名更精簡:
如果要保留檔名中連字線之前的名稱,將後方改為 -orig.jpg
結尾,可以執行:
ren *-*.jpg *-orig.jpg
若要將所有的 JPG 檔案的副檔名更改為 JPEG,可以執行:
ren *.jpg *.jpeg
在檔案總管中也可以直接啟動 PowerShell,是一種很實用的隱藏功能。
Step 1
在檔案總管的目錄中,先按住 Shift 鍵,然後在空白處按下滑鼠右鍵,在選單中點選「在這裡開啟 PowerShell 視窗」。
Step 2
這樣開啟的 PowerShell 視窗,其預設路徑就會是目前所在的目錄。
在 PowerShell 中,若要大量更改檔名通常都會使用 Dir
指令列出檔案名稱,再交給 Rename-Item
指令來更改檔名,以下是一些範例。
若要將所有的 JPG 檔案更改為相同的檔名,並自動加上編號,可以執行:
# 將檔名自動編號 Dir *.jpg | %{Rename-Item $_ -NewName ("new-name-{0}.jpg" -f $c++)}
執行的結果會像這樣:
若要讓數字統一為三位數,不足則補 0
,可以這樣寫:
# 將檔名自動編號(三位數,不足則補 0) Dir *.jpg | %{Rename-Item $_ -NewName ("new-name-{0:000}.jpg" -f $c++)}
若想要將太長的檔案名稱縮短,只保留每個檔名的前四個字母,可以執行:
# 僅保留檔案名稱的前四個字母,以及副檔名 Dir | Rename-Item -NewName {$_.Name.Substring(0,4) + $_.Extension}
若要將所有的 JPG 檔案的副檔名改為 jpeg
,可以執行:
# 更改副檔名 Dir *.jpg | Rename-Item -NewName { [io.path]::ChangeExtension($_.name, "jpeg") }
若要將檔案名稱中特定的字詞取代成新的文字,可以執行:
# 取代檔名中的關鍵字 Dir | Rename-Item -NewName {$_.Name -replace "old","new"}
若將新的字串設定為空字串,就等於刪除關鍵字的效果:
# 刪除檔名中的關鍵字 Dir | Rename-Item -NewName {$_.Name -replace "keyword",""}
將檔名中的空白字元,以下底線來取代也是很常用的指令:
# 將空白字元以下底線取代 Dir | Rename-Item -NewName { $_.Name -replace " ","_" }