[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理for和判断语句怎样根据系统版本执行不同的命令?

在XP中有一个systeminfo命令可以显示系统状态,我想做一个脚本来判断本系统是windows xP SP2还是windows xp sp3,如果是windows xp sp2 显示出来并走a
如果是windows xp sp3也显示出来走b
1 首先判断并显示:您使用的系统是Windows XP SP2 或者Windows XP SP3
2 其次就是如果是SP2就走a;如果是SP3就走b
我初步定了一个思路:
  1. @echo off
  2. %SystemDrive%\windows\system32\systeminfo.exe|findstr /i "OS 名称 OS 版本"
  3. 下面就不知道怎么搞了,如果把systeminfo >1.txt
  4. 那怎么用for /f "evol=    tokens= delims= " c% in (1.txt) do echo %c%
  5. if %c%=="Windows XP SP2" goto a
  6. if %c%=="Windows XP SP3" goto b
  7. else goto c
  8. :a
  9. :b
  10. :c
  11. cls
  12. echo ERROR!程序出错,正在关闭程序!
  13. ping 127.0.0.1 -n 5 <nul
  14. exit
复制代码
最最最关键的就是不会用for 语句把systeminfo 中的Windows XP SP3提出来赋给c变量啊?
求哪位大侠帮个忙,如果非要我搞只怕要搞几天咯

systeminfo 太麻烦了

code:
****************************************
@echo off

ver | find /i "2180" && goto SP2

ver | find /i "2600" && goto SP3

:SP2
ECHO windows xp sp2


:SP3
ECHO windows xp sp3

EXIT

*****************************************

"2180"和"2600" 是SP的代码  用VER命令查查  好久不用XP了  不知道版本号是多少   你自己确认一下  

good luck!

TOP

批处理检测网卡adapter状态

经常有家庭用户和公司局域网用户突然不能上网,或者重装系统或者动了系统哪里就不能上网了,论坛里各位大虾能不能做一个网络维护批处理:
开机或重启后,运行此批处理,检测本机所有网卡adapter和状态并显示给用户判断:
例如:1本地连接 rtl8139 已连接
      2本地连接2 tp-link 已禁用
      3无限连接 不能获取IP地址
      4无线连接1 驱动不正常

TOP

我知道一个很好的办法了,可以这样:
@echo off
systeminfo >1.txt
然后用for语句把OS 版本里的 2或者3  提出来赋给变量c
if %c%==2 goto a
if %c%==3 goto b
else goto error
:a
echo 您使用的系统是Windows XP SP2
--------
-------
:b
echo 您使用的系统是Windwos XP SP3
-------
----
:error
echo ERROR:程序出错正在关闭!
ping 127.0.0.1 -n 6 >nul
exit

TOP

回复 3楼 的帖子

以你的水平,还不够修改2楼的代码么?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

我需要的是显示完整的如windows xp sp2   
a是脚本的下一个步骤,b也是
并不是要你echo a
而是当是sp2时  脚本goto a

TOP

  1. @echo off
  2. systeminfo | findstr /c:"Pack 3" && echo b || echo a
  3. pause
复制代码

TOP

返回列表