Windows 其實內建許多可以更改大量檔案名稱的方法,有時候熟悉這些小技巧可以節省您很多時間。

有時候我們會從網路上下載許多圖片與檔案,通常檔案的名稱也是亂七八糟的,為了讓檔案看起更整齊,我們通常會將同一系列的檔案重新依照自己的規則來命名,但是如果檔案數量很多時,要手動更改每個檔案的名稱也是很累的。

所幸在 Windows 中本身就有內建一些更改大量檔案名稱的功能,只是一般人不曉得如何使用,以下分別介紹以檔案總管、命列提示字元與 PowerShell 的改檔名方法。

檔案總管

檔案總管是一個最方便的工具,不需要學習任何指令即可使用,不過功能就比較陽春,以下是使用檔案總管更改多個檔案名稱的步驟。

STEP 1
首先開啟檔案總管,找到要更改檔名的檔案。

STEP 2
選取要更改檔名的檔案。

STEP 3
在第一個檔案上按下右鍵,選擇「重新命名」。

STEP 4
輸入新的檔名。

STEP 5
輸入完之後,按下 Enter 鍵。

STEP 6
這樣檔案總管就會將所有選取的檔案重新命名為指定的檔案名稱,並且依照原本的順序編號。

命令提示字元

在 Windows 的命令提示字元之中,我們可以使用 renameren 指令配合萬用字元(*)來一次更改多的檔案的檔名。

STEP 1
若要開啟命令提示字元重新命名檔案,可以按著 Shift 鍵,並在資料夾的空白處點選滑鼠右鍵,選擇「在此處開啟命令式窗」。

STEP 2
使用 renameren 指令批次更改檔案名稱,最常見的使用方式就是更改副檔名:

ren .html .txt
STEP 3 這樣就完成了。 ## PowerShell Windows 的 PowerShell 的功能比命令提示字元還要強大,他可以使用管(pipe)的功能將多個指令結合起來使用,就像在 Linux shell 中一樣。 假設我沒有一些檔案,檔名中包含許多空白,以下示範將所有檔案名稱中的空白字元置換為減號(-)。 STEP 1 在主選單中找到 Windows PowerShell,並開啟它。 windows-powershell-1Windows 主選單 STEP 2 切換至檔案所在目錄後,使用 Dir 指令將所有的檔案名稱列出來,然後交給 Rename-Item 指令進行更改檔名的動作。
Dir | <span class="Statement">Rename-Item</span> -NewName { <span class="Type">$_</span>.name -<span class="Statement">replace</span> <span class="Constant">" "</span>, <span class="Constant">"-"</span> }
PowerShell 視窗 STEP 3 這樣就完成了。 以下補充一些比較複雜的 PowerShell 範例。 這一個是把所有的 jpg 圖檔重新命名為 image_編號.jpg,而編號的起始數字可以自己設定:
# 把所有的 JPG 檔案重新命名為 image_編號.jpg
Get-ChildItem *.jpg | ForEach-Object -Begin {
  $count = 1
} -Process {
  Rename-Item $_ -NewName "image_$count.jpg"
  $count++
}

這一段指令是將所有的 *.jpeg 檔案的副檔名改為 jpg,讓副檔名規則統一:

# 將所有 *.jpeg 檔案的副檔名改為 jpg
Get-ChildItem *.jpeg | Rename-Item -NewName {
  [System.IO.Path]::ChangeExtension($_.Name, ".jpg")
}

這一段指令稿是從所有的 *.jpg 檔案中,找出含有 oldstring 字眼的檔案,然後把 oldstring 這個字眼全部改為 newstring

# 從所有的 *.jpg 檔案中,找出含有 oldstring 字眼的檔案,
# 把 oldstring 改為 newstring
Get-ChildItem *.jpg -Filter "*oldstring*" | ForEach {
  Rename-Item $_ -NewName $_.Name.Replace("oldstring","newstring")
}

事實上 Windows 的 PowerShell 的功能不只這些,它提供了豐富的控制與自動化的系統管理能力,若您對於 PowerShell 有興趣,可以參考微軟官方的教學文件

Last modification:December 27th, 2020 at 01:30 pm
爱我有很多种方式,比如说打赏我。