我有幾百個文件以特定的方式命名,需要根據第六個字符替換第13-15個字符來重命名。我一直無法創造出能夠讀取第6個字符的東西,而是讓它獨立,只更改第13-15個字符。Windows批處理文件做到有條件重命名
這些文件的格式如下。
2016-A124578_XYZ_moretext.ext
2016-B345654_XYZ_morerandomtext.ext
2016-B235689_XYZ_moredifferenttext.ext
2016-A789945_XYZ_moretext.ext
2016-C547821_XYZ_moretext.ext
腳本需要讀取第6個字符(A,B或C),並用AAA或BBB或CCC更換XYZ取決於信。文件名的其餘部分需要顯示相同。
2016-A124578_XYZ_moretext.ext becomes 2016-A124578_AAA_moretext.ext
2016-B345654_XYZ_morerandomtext.ext becomes 2016-B345654_BBB_morerandomtext.ext
是否可以製作這種腳本? RegEx是否是嘗試它的最佳方式?
如果你已經不知道如何編寫批處理文件,請你幫個忙,學習的PowerShell代替。做任何事情,即使有點複雜的批次是痛苦的*。越早忘記它存在,越好。 Powershell更好,並且它已經預裝在現代Windows系統上。它實際上也支持正則表達式 - 批處理不支持。 – Blorgbeard
PowerShell不必要的冗長,默認情況下甚至不啓用。除非你有一個打字戀物癖,堅持批量。 – SomethingDark
這不是最好的語言,但是如果你想要寫實際的程序而不安裝新的東西,那就是Powershell或批處理。批處理是一堆非常可怕的向後兼容的黑客攻擊,語法反映了這一點。 Powershell有時是冗長的,但有很多IDE用於自動完成。對於簡單的命令列表,批處理是很好的。任何更復雜的事情,這只是可怕的。我的想法是。 – Blorgbeard