Board logo

标题: [文本处理] 批处理怎样替换指定位置字符串? [打印本页]

作者: lbmwin    时间: 2012-9-23 10:07     标题: 批处理怎样替换指定位置字符串?

  1. @echo off
  2. echo 【1】改名和密码
  3. set choice=
  4. set /p choice=请输入选项(Enter确认):
  5. if /i "%choice%"=="1" goto ips1
  6. :ips1
  7. cls
  8. *******************************
  9. *******************************
  10. *******************************
  11. echo 正在设置...
  12. netsh wlan set hostednetwork mode=allow ssid=abcdef key=123456
  13. netsh wlan start hostednetwork
复制代码
需求:
执行以上批处理按1后执行星号部分
星号部分作用是修改netsh wlan set hostednetwork mode=allow ssid=abcdef key=123456这一行里abcdef和123456位置字符串(长度不确定字符串不确定但这一行的空格等号等的相对位置确定)
操作方式:为分两次分别输入两个位置字符串修改
本批处理文件名为:netap.bat
各位大侠小弟先谢了
作者: forfiles    时间: 2012-9-24 10:37

  1. @echo off
  2. echo 【1】改名和密码
  3. set choice=
  4. set /p choice=请输入选项(Enter确认):
  5. if /i "%choice%"=="1" (
  6.     goto :ips1
  7. ) else (
  8.     goto :eof
  9. )
  10. :ips1
  11. cls
  12. set ssid=
  13. set /p ssid=请输入ssid的值(Enter确认):
  14. set key=
  15. set /p key=请输入key的值(Enter确认):
  16. echo 正在设置...        
  17. netsh wlan set hostednetwork mode=allow ssid=%ssid% key=%key%
  18. netsh wlan start hostednetwork
复制代码

作者: lbmwin    时间: 2012-9-24 18:10

回复 2# forfiles
老大您理解有点错了,我的希望是用星号部分的代码修改批处理自己那两个位置的字符,而本身那两个位置的字符串是不确定的
作者: forfiles    时间: 2012-9-24 22:56

回复 3# lbmwin


    能否说明一下为什么要这样做?
作者: lbmwin    时间: 2012-9-25 22:52

回复 4# forfiles
这个命令是开启WIN7虚拟AP的,本身那两个位置是账号和密码,我想实现在批处理界面修改帐号和密码
作者: Batcher    时间: 2012-9-25 22:58

回复 5# lbmwin


    看不懂你在说什么。能否解释一下2楼的代码为什么不能满足需求?
作者: lbmwin    时间: 2012-9-26 23:30     标题: 标题

回复 6# Batcher
二楼代码每次运用都要输入帐号密码,而我有时需要直接运行最下面命令行,有时需要更改这个命令行的这两个位置代码




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2