首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过批处理文件标识windows上的版本

通过批处理文件标识windows上的版本
EN

Stack Overflow用户
提问于 2018-05-23 12:30:25
回答 1查看 52关注 0票数 0

我正在尝试运行基于我使用的windows版本的powershell脚本。我参考了一些文档,并自己编写了这段代码。我无法执行批处理文件。输出闪烁了一秒钟左右,然后就关闭了。我尝试从命令提示符调用批处理文件,但得到一个错误消息:

代码语言:javascript
复制
( was unexpected at this time.

我已经附上了下面的代码。请帮助我们!

代码语言:javascript
复制
@ECHO OFF

for /f "tokens=4-7 delims=[.] " %%i in ("ver") do @ ( if %%i==Version (set myvar=%%i.%%k ) else ( set myvar=%%i.%%j))

IF %myvar%==10.0 ( goto power ) ELSE (goto cont)

:power
powershell.exe -file C:\Users\Kashy\Desktop\secure.ps1
set var=%errorlevel%
IF %var%==5 ( echo "Disable Secure boot mode. Refer our readme document for more details." ) ELSE (goto cont) 

goto eof

:cont
echo hello

:eof
pause
exit

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2018-05-23 17:19:10

因为这样做的目的不是识别Windows版本,而是检测版本是否是Windows10,所以我将使用WMIC

这应该仅标识那些运行Windows 10或更高版本的系统:

代码语言:javascript
复制
@Echo Off
Set "OV="
For /F "Skip=1 Tokens=*" %%A In (
    'WMIC OS Where "Version<'4'" Get Version 2^>Nul') Do For %%B In (%%A
) Do Set "OV=%%A"
If Defined OV GoTo Start
Echo=
Echo Your Windows version does not meet the requirements
Echo Press any key to exit . . .
Echo=
Pause>Nul
Exit /B

:Start
Rem your code for Win10+

我只在Windows 10+上使用了带有4< to GoTo Start,(字符串比较会发现第一个字符1小于4__)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50479821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档