批处理IF语句出问题。 20
@FOR/F"tokens=2*delims=:"%%iIN('ipconfig/all^|find/i"描述"')DOsetname=%%i@FOR/F"tokens=...
@FOR /F "tokens=2* delims=:" %%i IN ('ipconfig/all^|find /i "描述"') DO set name=%%i
@FOR /F "tokens=2* delims=:" %%i IN ('ipconfig/all^|find /i "Description"') DO set name=%%i
if {%i} == "Broadcom NetXtreme 57xx Gigabit Controller" goto noparms
:noparms
echo A
if {%i} == "Intel<R> 82583 Gigabit Network Connection" goto parms
:parms
echo B
pause
代码的意思就是通过前两行判断出计算机的网卡名称,然后通过网卡名称确定他的网卡厂家是A或B。现在获取网卡名称这一步是可以实现的,但是明显IF语句没有生效,本人新手实在不知道应该怎么修改了,求各位大神帮帮忙。
希望各位大神帮我修改下,不胜感激 展开
@FOR /F "tokens=2* delims=:" %%i IN ('ipconfig/all^|find /i "Description"') DO set name=%%i
if {%i} == "Broadcom NetXtreme 57xx Gigabit Controller" goto noparms
:noparms
echo A
if {%i} == "Intel<R> 82583 Gigabit Network Connection" goto parms
:parms
echo B
pause
代码的意思就是通过前两行判断出计算机的网卡名称,然后通过网卡名称确定他的网卡厂家是A或B。现在获取网卡名称这一步是可以实现的,但是明显IF语句没有生效,本人新手实在不知道应该怎么修改了,求各位大神帮帮忙。
希望各位大神帮我修改下,不胜感激 展开
2个回答
展开全部
@echo off
set "wmicstr=wmic nic where PhysicalAdapter=true get Name"
%wmicstr%|>nul find /i "Broadcom NetXtreme 57xx Gigabit Controller"&&(
goto noparms
)||(
%wmicstr%|>nul find /i "Intel<R> 82583 Gigabit Network Connection"&&goto parms||echo;没有匹配项
)
pause&exit
:noparms
echo A
>nul ping /n 2 0&exit
:parms
echo B
>nul ping /n 2 0&exit
追问
到了XP环境下显示设备WMI无效的查询,代码0x80041047 好像XP用不了啊,能帮忙修改下吗 多谢!
追答
set "wmicstr=wmic nic get Name"
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询