我運行此命令,我不明白爲什麼它不會工作的命令來設置一個變量不起作用
setlocal EnableDelayedExpansion
for %%a in (harry-boy) do set %%a:-==
echo %harry%
pause
這是結果我得到 -
e:\6\1>setlocal EnableDelayedExpansion
e:\6\1>for %a in (harry-boy) do set %a:-==
e:\6\1>set harry-boy:-==
e:\6\1>echo
ECHO is on.
e:\6\1>pause
Press any key to continue . . .
我將連字符號改爲等號,然後在其上運行set命令。我期望看到變量「哈里」=「男孩」?
下面是一個簡單的測試 -
set file=play=here.mkv
set %file:==-%
echo %file%
pause
,我得到這個 -
set file=play=here.mkv
==-%
was unexpected at this time.
set %file:==-%
我想我會得到文件=播放here.mkv的新內容。好吧,我看到這使得語法錯誤,set命令停止。那麼如何將=改爲連字符?
你的語法是錯誤的命令集和你不能使用循環變量名那樣。它必須是一個變量名稱。 – foxidrive
您已添加更多信息 - 替換功能無法替代「=」符號。 – foxidrive