2014-07-25 118 views
0

對不起,如果我問一個非常愚蠢的問題,但在編寫簡單批處理腳本時我有點生疏,但我遇到了一個問題。我想寫一個腳本,根據星期幾來更改本地管理員密碼。該腳本運行,但只運行第一個標籤,並跳過IF語句,我有點不確定問題可能是什麼。使用帶變量的IF語句

FOR /F "skip=1" %%A IN ('WMIC Path Win32_LocalTime Get DayOfWeek') DO (
    set DOW=%%A 
) 

IF DOW == 0 goto SUN 
IF DOW == 1 goto MON 
IF DOW == 2 goto TUE 
IF DOW == 3 goto WED 
IF DOW == 4 goto THU 
IF DOW == 5 goto FRI 
IF DOW == 6 goto SAT 

:SUN 
net user admin Password0 
GOTO END 

:MON 
net user admin Password1 
GOTO END 

:TUE 
net user admin Password2 
GOTO END 

:WED 
net user admin Password3 
GOTO END 

:THU 
net user admin Password4 
GOTO END 

:FRI 
net user admin Password5 
GOTO END 

:SAT 
net user admin Password6 
GOTO END 

:END 

回答

2

要讀取DOW變量中的值,語法是%DOW%

if %DOW%==0 goto SUN 
+0

好點,這會導致另一個問題。 :) – foxidrive

0

你也可以使用下面的。另外請注意,您需要在標籤前加上冒號(:),這似乎在您的代碼中缺失。

if %DOW% EQU 0 goto :SUN 

乾杯,G