2013-01-17 163 views

回答

6

使用%file:_= %表示%file%,下劃線用空格替換。不幸的是,這對於變量不起作用,所以如果你在循環播放文件,你必須使用一箇中間變量。

@echo off 
setlocal enabledelayedexpansion 
for %%a in (*_*) do (
    set file=%%a 
    ren "!file!" "!file:_= !" 
) 
+0

,看起來像它的工作,但我想引用一組命令,如下所示:SET「文件= %%一個」 – djangofan

+0

@djangofan其實我用空格和&嘗試過了,它似乎並不需要報價。 (但是''!file!'''做到了!) – Neil

+0

是的,我總是引用他們「僅僅是爲了安全」,特別是在其中有空格的變量。注意:如果你理解'〜'char在DOS中的工作方式,那麼有一些異常工作正常。例如,如果上面的腳本試圖重命名名爲「my_file named.txt」的文件,該怎麼辦? – djangofan

相關問題