PowerRename 公用程式
PowerRename 是一種大量重新命名工具,可讓您:
- 修改大量文件的檔名,而不會為所有檔案提供相同的名稱。
- 在檔案名稱的目標區段上執行搜尋和取代。
- 在多個檔案上執行規則運算式重新命名。
- 在完成大量重新命名之前,請先檢查預覽視窗中的預期重新命名結果。
- 完成之後復原重新命名作業。
小提示
您可以使用 AI 協助來 建立正規表示式,以搭配 CopilotPowerRename 使用。
示範
在此示範中,檔案名稱「foo」的所有執行個體都取代為「foobar」。 由於所有檔案都是唯一命名的,因此這需要很長的時間才能手動逐一完成。 PowerRename 會啟用單一大量重新命名。 請注意,總管的「復原重新命名」(Ctrl+Z) 指令可以復原最後的變更。
PowerRename 視窗
選取 WindowsFile Explorer 中的檔案後,按一下滑鼠右鍵並選取重新命名為PowerRename (僅在 PowerToys 中啟用時才會出現)。 將顯示所選專案以及搜尋和取代值、選項清單,以及顯示輸入的搜尋和取代值結果的預覽窗格。
搜尋
輸入文字或規則運算式以在您的選取項目中,尋找包含與您的項目相符的條件之檔案。 您會在 [預覽 ] 窗格中看到相符的專案。
Replace with
輸入文字以取代先前輸入的搜尋值。 您可以在預覽窗格中看到原始文件名稱和重新命名後的文件名稱。
Use regular expressions
如果選取了,搜尋值將被解釋為規則運算式 (regex)。 [取代] 值也可以包含 regex 變數 (請參閱下面的範例)。 如果清除了,搜尋值將被解釋為純文字,並被取代為 [取代] 欄位中的文字。
有關擴展 Boost 功能的設定功能表中的選項的更多資訊,請參閱regex。
符合所有出現的情況
如果選取,[搜尋] 字段中的所有文字相符項目都會取代為 [取代文字]。 否則,僅取代檔案名稱中 [搜尋] 文字的第一個執行個體。
例如,假設檔案名稱為:powertoys-powerrename.txt
:
- 搜尋:
power
- 使用以下內容重新命名:
super
重新命名檔案的值將導致:
- 符合所有出現的情況已清除:
supertoys-powerrename.txt
- 符合所有出現的情況已選取:
supertoys-superrename.txt
區分大小寫
如果選取了,則 [搜尋] 欄位中指定的文字僅在大小寫相同的情況下才會符合項目中的文字。 預設情況下,是不區分大小寫符合度的。
適用於:僅限檔名
此作業僅修改檔案名稱。 例如:txt.txt
→ NewName.txt
。
適用於:僅限延伸模組
此作業僅修改檔案副檔名。 例如:txt.txt
→ txt.NewExtension
。
包含檔案
清除會導致檔案未包含在作業中。
包含資料夾
清除會導致資料夾未包含在作業中。
包含子資料夾
清除會導致資料夾中的檔案未包含在作業中。 預設情況下,包含所有子資料夾項目。
文字格式
在四個選項之間進行選擇,將項目轉換為全部小寫、全部大寫、標題大寫 (句子的第一個字元大寫) 或將每個單字大寫。
列舉項目
如果選取了,您可以使用以下模式做為 [取代為] 文字的一部分:
變數樣式 | 說明 |
---|---|
${} |
一個簡單的計數器,對於第一個重新命名的檔案將從零開始。 |
${increment=X} |
具有自訂增量值的計數器。 |
${padding=X} |
具有指定數量的前置零的計數器。 |
${start=X} |
具有自訂初始值的計數器。 |
您也可以在同一取代字串中使用多個計數器並組合自訂。
例如,假設有一個 [搜尋] 文字a
和一組檔案:
- a.jpg
- ab.jpg
- abc.jpg
[取代為] 文字Image_${padding=4;increment=2;start=10}_
將產生以下內容:
- Image_0010_.jpg
- Image_0012_b.jpg
- Image_0014_bc.jpg
隨機字串值
如果選取了,您可以使用以下模式做為 [取代為] 文字的一部分:
變數樣式 | 說明 |
---|---|
${rstringalnum=X} |
具有大寫字母、小寫字母和 0-9 位數的隨機字串,自定義長度。 |
${rstringalpha=X} |
具有大寫字母和小寫字母的隨機字串,自定義長度。 |
${rstringdigit=X} |
具有 0-9 位數的隨機字串,自定義長度。 |
${ruuidv4} |
根據 v4 規格隨機 UUID。 |
根據預設,建立的隨機字串值是混合大小寫。 您可以使用提供的PowerRename文字格式選項來調整產生行為。
如果您想要建立具有大括弧的 UUID 值,您可以根據 {
ruuidv4 模式,將 }
和 新增至{${ruuidv4}}
:。
使用檔案建立日期和時間取代
透過根據以下資料表輸入變數模式,可以在 [取代為] 文字中使用檔案的建立日期和時間屬性。 在 [取代為] 字段中選取工具提示,可讓您檢視並選取支援的模式。
變數樣式 | 說明 |
---|---|
$YYYY |
年份,由完整的四位或五位數字表示,取決於所使用的日曆。 |
$YY |
年份,僅由最後兩位數字表示。 單一位數年份會新增前置零。 |
$Y |
年份,僅由最後一位數字表示。 |
$MMMM |
月份的名稱。 |
$MMM |
月份的縮寫名稱。 |
$MM |
月份,以含有前置零的數字表示單一位數月份。 |
$M |
月份,以不含前導零的數字表示單一位數月份。 |
$DDDD |
星期幾的名稱。 |
$DDD |
星期幾的縮寫名稱。 |
$DD |
月份中的一日,以含有前導零的數字表示單一位數日。 |
$D |
月份中的一日,以不含前導零的數字表示單一位數日。 |
$hh |
小時,具有單一位數小時前置零。 |
$h |
小時,不具有單一位數小時前置零。 |
$mm |
分鐘,具有單一位數分鐘前置零。 |
$m |
分鐘,不具有單一位數分鐘前置零。 |
$ss |
秒鐘,具有單一位數秒鐘前置零。 |
$s |
秒鐘,不具有單一位數秒鐘前置零。 |
$fff |
毫秒,以完整三位數表示。 |
$ff |
毫秒,僅以前兩位數表示。 |
$f |
毫秒,僅以第一位數表示。 |
例如,假設檔案名稱為:
-
powertoys.png
,建立於11/02/2020 (十一月二日) -
powertoys-menu.png
,建立於 11/03/2020 (十一月三日)
輸入條件以重新命名項目:
- 搜尋:
powertoys
- 使用以下內容重新命名:
$MMM-$DD-$YY-powertoys
重新命名檔案的值將導致:
Nov-02-20-powertoys.png
Nov-03-20-powertoys-menu.png
規則運算式
在大部分的使用案例中,簡單的搜尋和取代就已足夠。 不過,在某些情況下,複雜的重新命名工作可能需要更多控制。 正則表達式 在此案例中有所説明。
規則運算式會定義文字的搜尋模式。 它們可用來搜尋、編輯及操作文字。 對於指定的字串,正則表達式所定義的模式可能會比對一次、數次或完全不相符。 PowerRename 使用現代程式語言中常見的 ECMAScript 語法。
若要啟用規則運算式,請選取 [使用規則運算式]。 請注意,您可能會想要在使用正則表達式時選取 [ 比對所有專案 ]。
若要使用 Boost 程式庫而不是標準程式庫,請在 PowerToys 設定中選取 使用 Boost 程式庫選項。 它能啟用標準程式庫不支援的延伸模組,例如 lookbehind。
規則運算式的範例
簡單的比對範例。
搜尋 | 描述 |
---|---|
^ |
比對檔案名稱的開頭 (零大小) |
$ |
比對檔案名稱的結尾 (零大小) |
.* |
比對名稱中的所有文字 |
^foo |
比對開頭為「foo」的文字 |
bar$ |
比對以「bar」結尾的文字 |
^foo.*bar$ |
比對開頭為「foo」且結尾為「bar」的文字 |
.+?(?=bar) |
將所有內容與「bar」相比對 |
foo[\s\S]*bar |
將所有內容與「foo」和「bar」(之間和包括) 比對 |
比對和變數範例。 擷取群組定義於括號中()
。 若要引用它們,$
請使用後跟數字:$1
將引用第一組、第二組等。$2
使用變數時,必須選擇「符合所有出現」。
搜尋 | Replace with | 描述 |
---|---|---|
(.*).png |
foo_$1.png |
在 PNG 檔案的現有檔案名稱前面加上「foo_」 |
(.*).png |
$1_foo.png |
將「_foo」附加到 PNG 檔案的現有檔案名稱 |
(.*) |
$1.txt |
將「.txt」副檔名附加到現有檔案 |
(^\w+\.$)\|(^\w+$) |
$2.txt |
僅當現有檔案名稱沒有副檔名時才將「.txt」副檔名附加到現有檔案名稱 |
(\d\d)-(\d\d)-(\d\d\d\d) 或 (\d{2})-(\d{2})-(\d{4}) |
$3-$2-$1 |
移動檔案名稱中的部分:「29-03-2020」變為「2020-03-29」 |
^(.{n})(.*) 或 (.*)(.{n})$ |
$1foo$2 |
分別從開頭或結尾插入「foo」n 個字元 |
^.{n} 或 .{n}$ |
無 | 分別從開頭或結尾修剪 n 個字元 |
向 Copilot 尋求正則表達式的幫助
您可以從 Copilot 取得 AI 協助,以產生簡單或複雜的正則表示式。 您可以自定義提示,以根據您的需求產生字串。
下列文字顯示 Copilot 的範例提示:
Generate a regular expression to match a string that starts with "foo" and ends with "bar" and has at least six letters and two numeric characters in between them.
Copilot 是由 AI 所提供,因此可能會有驚喜和錯誤。 如需詳細資訊,請參閱 Copilot 常見問題。
學習規則運算式的其他資源
有一些實用的範例/速查表可協助您:
檔案清單篩選
可以在 PowerRename 中使用篩選器來縮小重新命名的結果範圍。 使用預覽窗格檢查預期結果。
原始,預覽窗格中的第一欄在以下之間切換:
- 已選取:已選取要重新命名的檔案
- 已清除:不會選取要重新命名的檔案(即使它符合搜尋準則中輸入的值)
已重新命名,預覽窗格中的第二欄可以切換:
- 預設預覽將顯示所有已選取的檔案,只有符合 [搜尋] 條件的檔案才會顯示更新的重新命名值。
- 選取 [已重新命名] 標題會切換預覽,只顯示將重新命名的檔案。 您原始選取項目中的其他已選取檔案將不顯示。
設定
如下所述,可以在設定中設定附加的的選項:
設定 | 描述 |
---|---|
顯示 PowerRename 於 | PowerRename 會顯示為其中一個預設選項,或只在擴充操作功能表中出現。 |
隱藏內容功能表中的圖示 | PowerRename隱藏操作功能表中的圖示。 |
為搜尋及取代欄位啟用自動完成 | 根據 先前的 PowerRename用法,自動建議在搜尋中使用的字詞,並取代欄位。 |
項目數目上限 | 搜尋的最大數目,並取代要顯示的建議。 |
顯示最近使用的字串 | 開啟 PowerRename時,填入搜尋,並將字段取代為使用的最後一個值。 |
使用 Boost 程式庫 | 啟用擴充regex功能。 如需詳細資訊,請參閱 正則表達式 。 |
安裝 PowerToys
此公用程式是Microsoft PowerToys 公用程式的一部分,適用於電力使用者。 它提供一組實用的公用程式來微調和簡化您的 Windows 體驗,以提升生產力。 若要安裝PowerToys,請參閱 安裝PowerToys。