好吧,我越來越瘋狂,我不知道還有什麼要做,我已經嘗試了幾件事,沒有任何工作。批量延時擴展不起作用
看看這個示例代碼(TEST.CMD):
setlocal enabledelayedexpansion enableextensions
set VAR=before
if "%VAR%" == "before" (
set VAR=after;
if "%VAR%" == "after" @echo If you see this, it worked
)
這是生成的輸出:
D:\>ver
Microsoft Windows [Version 6.1.7600]
D:\>test.cmd
D:\>setlocal enabledelayedexpansion enableextensions
D:\>set VAR=before
D:\>if "before" == "before" (
set VAR=after;
if "before" == "after"
)
D:\>
難道我做錯了什麼?
這只是一個測試,我需要的代碼也使用變量,並且需要延遲擴展,但是這個簡單的測試不起作用,其他工作也不會起作用(我試過了,我以一個簡單的例子來結束測試它是否工作)。
編輯:新的代碼和輸出:
TEST.CMD:
@echo off
setlocal enabledelayedexpansion enableextensions
set VAR=before
if "%VAR%" == "before" (
set VAR=after;
if "!VAR!" == "after" (
echo It worked.
) else (
echo It didn't work.
)
)
輸出:
D:\>test.cmd
It didn't work.
D:\>
代碼刪除
;
失去分號在線路 組VAR =之後; 它應該工作 – 2009-11-19 13:03:49就是這樣!一個分號......我,我是一個新手:) – Richard 2009-11-19 13:39:17