找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25163|回复: 3

[网络连接] [已解决]如何让批处理变量值只用一条代码?

[复制链接]
发表于 2015-9-19 08:29:37 | 显示全部楼层 |阅读模式
  1. @echo off & setlocal enabledelayedexpansion
  2. :ch
  3. for /f "skip=3 tokens=3 delims=用" %%a in ('netsh interface show interface') do (
  4.         for /f "tokens=*" %%b in ("%%a") do (
  5.                 set /a m+=1
  6.                 set name!m!=%%~nxb
  7.         )
  8. cscript /nologo ics.vbs A "!name1!" "off"
  9. cscript /nologo ics.vbs A "!name2!" "off"
  10. cscript /nologo ics.vbs A "!name3!" "off"
  11. cscript /nologo ics.vbs A     .......
  12. )
复制代码

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-9-19 11:42:16 | 显示全部楼层
猜的
  1. @echo off
  2. for /f "skip=3 tokens=3 delims=用" %%a in ('netsh interface show interface') do (
  3.     for /f "tokens=*" %%b in ("%%a") do (
  4.         cscript /nologo ics.vbs A "%%~nxb" "off"
  5.     )
  6. )
  7. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2015-9-19 11:46:33 | 显示全部楼层
回复 2# pcl_test


    可以,版主厉害!

但是和原先代码合并后,就变成这样了:
  1. @echo off & setlocal enabledelayedexpansion
  2. :ch
  3. for /f "skip=3 tokens=3 delims=用" %%a in ('netsh interface show interface') do (
  4.         for /f "tokens=*" %%b in ("%%a") do (
  5.                 cscript /nologo ics.vbs "%%~nxb" "%%~nxb" "off"
  6.                 set /a m+=1
  7.                 echo;!m!、%%~nxb
  8.                 set name!m!=%%~nxb       
  9.         )
  10. )
  11. set m=& set A=& set B=
  12. set /p A=第一个参数:
  13. set /p B=第二个参数:
  14. if "%A%"=="" set f=1
  15. if "%B%"=="" set f=1
  16. if defined f (cls & set a=& goto :ch)
  17. cscript /nologo ics.vbs "!name%A%!" "!name%B%!" "on"
  18. pause & exit /b
复制代码
 楼主| 发表于 2015-9-19 11:56:19 | 显示全部楼层
回复 3# mlc8686


    用了两组for好像解决了:
  1. @echo off & setlocal enabledelayedexpansion
  2. for /f "skip=3 tokens=3 delims=用" %%a in ('netsh interface show interface') do (
  3.     for /f "tokens=*" %%b in ("%%a") do (
  4.         cscript /nologo ics.vbs A "%%~nxb" "off"
  5.     )
  6. )
  7. :ch
  8. for /f "skip=3 tokens=3 delims=用" %%a in ('netsh interface show interface') do (
  9.         for /f "tokens=*" %%b in ("%%a") do (
  10.                 set /a m+=1
  11.                 echo;!m!、%%~nxb
  12.                 set name!m!=%%~nxb
  13.         )
  14. )
  15. set m=& set A=& set B=
  16. set /p A=第一个参数:
  17. set /p B=第二个参数:
  18. if "%A%"=="" set f=1
  19. if "%B%"=="" set f=1
  20. if defined f (cls & set a=& goto :ch)
  21. cscript /nologo ics.vbs "!name%A%!" "!name%B%!" "off"
  22. cscript /nologo ics.vbs "!name%A%!" "!name%B%!" "on"
  23. pause & exit /b
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 16:22 , Processed in 0.021344 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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