吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2942|回复: 3
收起左侧

[讨论] 批处理bat获取系统版本及位数

[复制链接]
落红护花 发表于 2020-9-5 13:45
突发奇想想做一个安装一款游戏的批处理,过程中遇到了要获取Windows系统版本及位数的问题,顺便查了一下各个版本的版本号,如下
32e5de592d2d7413857c31330dde7ea4_1356870581_2201.PNG
图片中少了个Windows 10Windows 10的版本号是10.0
批处理中用 ver | find 命令可以查找版本号,so,如下


0.png

在此只提供了几个常用系统检测,具体大家可以再钻研一下

接下来就是获取系统位数了,x%PROCESSOR_ARCHITECTURE:~-2% 命令可以直接获取系统位数


全部代码如下



@echo off
if /i not "%os%"=="Windows_NT" (set TheOS=非Windows系统&set TheBit=) else (
ver | find "4.0" > nul && set TheOS=Windows 95
ver | find "4.10"> nul && set TheOS=Windows 98
ver | find "4.90"> nul && set TheOS=Windows me
ver | find "3.51"> nul && set TheOS=Windows NT35
ver | find "5.0" > nul && set TheOS=Windows 2000
ver | find "5.1" > nul && set TheOS=Windows XP
ver | find "5.2" > nul && set TheOS=Windows 2003
ver | find "6.0" > nul && set TheOS=Windows Vista
ver | find "6.1" > nul && set TheOS=Windows 7
ver | find "6.2" > nul && set TheOS=Windows 8
ver | find "10.0"> nul && set TheOS=Windows 10
set TheBit=x%PROCESSOR_ARCHITECTURE:~-2%
)
echo 您的系统版本:%TheOS% %TheBit%
pause

如果想要根据位数来跳转,需要 if 语句来判断位数

@echo off
set bit=x%PROCESSOR_ARCHITECTURE:~-2%
if "%bit%"=="x64" (goto 64) else goto 32
:64
echo 64
pause
:32
echo 32
pause

如果想要根据系统来跳转,和位数相似

@echo off
ver | find "6.1" > nul && set TheOS=Windows 7
ver | find "6.2" > nul && set TheOS=Windows 8
ver | find "10.0"> nul && set TheOS=Windows 10
if "%TheOS%"=="Windows 10" (goto 10)
if "%TheOS%"=="Windows 7" (goto 7)
if "%TheOS%"=="Windows 8" (goto 8)
:10
echo win10
pause

以此类推
希望能对大家有用

新人发帖,有违规请告知并删帖,谢谢

免费评分

参与人数 1吾爱币 +1 收起 理由
我是一个外星人 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

行云丶尘伤 发表于 2020-9-5 16:09
不明觉厉...懂编程的都是牛人
旋风中的小聪明 发表于 2020-9-5 16:27
余钦 发表于 2020-9-5 16:37
可以续写成在局域网获取Windows系统版本并保存至ftp中的
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-30 00:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表