我想在找到結果時運行該命令,但似乎不起作用。我們的電腦名稱類似於 HS-33-123-WC、HS-34-456-X 結果似乎不是我想要的。看來我沒有製作正確的腳本 if %%a==WC goto dhcp and if %%a==X goto static
REM Display the 4th group of character(s) after -
wmic computersystem get name
for /f "tokens=4 delims=-" %%a in ("%computername%") do (echo %%a && goto next)
:next
if %%a==WC goto dhcp
if %%a==X goto static
:static
echo Static
pause
goto end
:dhcp
echo This is DHCP
pause
goto end
:結束@退出/b
答案1
像這樣的東西:
@echo off
REM Display the 4th group of character(s) after -
for /f "tokens=4 delims=-" %%a in ("%computername%") do (
echo "%%a"
set Var=%%a
)
if "%Var%"=="WC" goto dhcp
if "%Var%"=="X" goto static
:end
exit
:static
echo Static
pause
goto end
:dhcp
echo This is DHCP
pause
goto end
答案2
%%a
僅在循環內部可用。
您應該在循環內部為其設定一個局部變數。新增指令:
set var=%%a
%var%
然後在下面的程式碼中使用。