[英]Problem with if command -> set -> echo in Windows Command Prompt
我將使用名為%ProductKey%的變量制作Windows批處理文件。 我有確定Windows版本的代碼(哪個是變量%WINVER%)。 它應使用if命令設置ProductKey變量,並回顯%ProductKey%,其應為XXXXX-XXXXX-XXXXX-XXXXX-XXXXX。
for /f "usebackq skip=1 tokens=*" %%i in (`WMIC OS Get Caption ^| findstr /r /v "^$"`) do set WINVER=%%i
if "%WINVER%" == "Microsoft Windows 10 Pro" ( set ProductKey=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX )
echo %ProductKey%
pause
%WINVER%是用於我的PC的Microsoft Windows 10 Pro。
它應該顯示XXXXX-XXXXX-XXXXX-XXXXX-XXXXX,這是產品密鑰,它告訴我只是回聲已關閉。
我建議你加一行
echo "%WINVER%"
在“如果”測試之前。
對於Windows 10 Home,這將顯示“ Microsoft Windows 10 Home” 。 我無法使用Windows 10 Pro進行測試,但是我的直覺告訴我Pro還將顯示那些尾隨空格。
也許
if "%WINVER: =%" == "MicrosoftWindows10Pro" ...
將解決您的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.