:start
net view
set nick=
echo.
echo.
echo If you want to select a common target, enter one of the following:
echo (computer1)
echo (computer2)
echo (computer3)
set /P target="Enter one of the above computer names (without \\):
IF "%target%"=="(computer1)" do(
set nick=(computer1)
goto shortcut
)
IF "%target%"=="(computer2)" do(
set nick=(computer2)
goto shortcut
)
IF "%target%"=="(computer3)" do(
set nick=(computer3)
goto shortcut
)
ELSE goto shutdown
上面的代碼是一個程序,應該允許您鍵入一個快捷方式來存儲變量暱稱中的計算機名稱。如果批處理中的字符串中的語句不返回true?
我很新的批,FYI。
當我運行該程序時,無論如何執行第一個if語句(即使%target%是不同的值)。我該如何解決這個問題?我已經完成了比較字符串的深入研究,但都沒有成功。
P.S.我需要在關機頁面中使用nick,所以我真的需要根據用戶輸入的內容設置值。此外,(電腦)不屬於該計劃的一部分;他們是我爲了隱私而替換的實際計算機名稱。
謝謝!
通過句子「第一條if語句不管執行什麼」,你的意思是說你的代碼執行後變量'nick'變成'(computer1)'嗎? – 2014-11-07 01:14:13
@ Fumu7是的,無論用戶輸入什麼值,變量暱稱都被設置爲(computer1)。 – ajc2000 2014-11-07 01:15:47
我的壞!忘記更改if語句中的字符串。現在可能更容易理解@ Fumu7 – ajc2000 2014-11-07 01:19:48