這可能看起來是一個重複的問題,但事實並非如此。我的問題有點不同。實際上,我有一個包含很多 mp4 檔案的資料夾,我想為每個檔案名稱添加 GOOD 後綴。看到上一個問題的答案,我做了一些事情,最終實際上以 .mp4good 為後綴。因此,最初的檔案 a.mp4 變成了 a.mp4good.mp4 而不是 aGOOD.mp4 (我真正想要的)。幸運的是,所有這些文件都在運行,但名稱不是我想要的。我請求幫助如何從這一點得到我想要的東西。我在 DOS 中使用包含這些文件的資料夾的重命名命令。
答案1
正如您所發現的,用於將後綴附加到基本名稱的語法不正確。關於原因的解釋可以在以下位置找到: Windows RENAME 指令如何解釋通配符?。該連結還具有附加到基本名稱的正確語法:
ren *.mp4 ??????????????????GOOD.*
必須有足夠的長度?
來匹配最長的基本名稱的長度。
請注意,如果您有一些表單的起始名稱a.b.mp4
,那麼上面的內容將會產生aGOOD.b.mp4
。如果您想要a.bGOOD.mp4
,那麼您需要的不僅僅是一個簡單的 REN 命令。你可以使用
for %F in (*.mp4) do @ren "%F" "%~nFGOOD.mp4"
如果將命令放入批次腳本中,則必須將百分比加倍
@echo off
for %%F in (*.mp4) do ren "%%F" "%%~nFGOOD.mp4"
目前您已經有了表格的名稱a.mp4GOOD.mp4
,並且您想要aGOOD.mp4
。
解決辦法是:
ren *.mp4GOOD.mp4 ??????????????????GOOD.mp4
如果某些名稱有兩個以上的點,那麼您將需要的不僅僅是一個簡單的 REN 命令。
for %A in (*.mp4GOOD.mp4) do @for %B in ("%~nA") do @ren "%B" "%~nBGOOD.mp4
如果將命令放入批次腳本中,請記住將百分比加倍。