dos批处理文件里面的双引号里面还有引号改怎么处理?

keyskyer 2009-04-08 03:32:59
@echo off
echo set sh=WScript.CreateObject("WScript.Shell") >telnet_tmp.vbs
echo WScript.Sleep 300 >>telnet_tmp.vbs
echo sh.SendKeys "open 192.168.0.37" >>telnet_tmp.vbs
echo WScript.Sleep 300 >>telnet_tmp.vbs
echo sh.SendKeys "{ENTER}" >>telnet_tmp.vbs
echo WScript.Sleep 300 >>telnet_tmp.vbs
echo sh.SendKeys "y{ENTER}" >>telnet_tmp.vbs
echo WScript.Sleep 300 >>telnet_tmp.vbs
echo sh.SendKeys "netsh interface ip set address "本地连接" gateway=192.168.1.1 gwmetric=1

{ENTER}">>telnet_tmp.vbs
start telnet
cscript //nologo telnet_tmp.vbs
del telnet_tmp.vbs
...全文
2047 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dangdang2471 2011-08-03
  • 打赏
  • 举报
回复 1
用"\"转义
例如:
sc create postgresql-9.0 binpath= "C:/Program Files/PostgreSQL/9.0/bin/pg_ctl.exe runservice -N \"postgresql-9.0\" -D \"C:/Program Files/PostgreSQL/9.0/data\" -w"

\"postgresql-9.0\" 和 \"C:/Program Files/PostgreSQL/9.0/data\" 两边的引号前分别有"\"转义。
shensedelan 2011-08-02
  • 打赏
  • 举报
回复
用^将引号里面的引号转义
比如这样 cmd /c "dir ^"c:\Program Files^""

明白了吗
keyskyer 2009-04-14
  • 打赏
  • 举报
回复
都不行的哦!!
ljc007 2009-04-12
  • 打赏
  • 举报
回复
[code=BatchFile]@echo off
>telnet_tmp.vbs (echo set sh=WScript.CreateObject^("WScript.Shell"^)
echo WScript.Sleep 3000
echo sh.SendKeys "open 192.168.0.37"
echo WScript.Sleep 3000
echo sh.SendKeys "{ENTER}"
echo WScript.Sleep 3000
echo sh.SendKeys "y{ENTER}"
echo WScript.Sleep 3000
echo sh.SendKeys "netsh interface ip set address ""本地连接"" gateway=192.168.1.1 gwmetric=1 {ENTER}"
)
start telnet
cscript //nologo telnet_tmp.vbs
del telnet_tmp.vbs[/code]
keyskyer 2009-04-12
  • 打赏
  • 举报
回复
我的这个代码,在.bat类型文件的环境下运行的哦,两双引号和去掉内部的引号,都不能执行完整命令!
古井荡月 2009-04-12
  • 打赏
  • 举报
回复
试试三个引号。。。
keyskyer 2009-04-11
  • 打赏
  • 举报
回复
两个双引号吗?
我在xp下试过了,不行哦!
spark_li 2009-04-11
  • 打赏
  • 举报
回复
变通办法之一:既然你的telnet_tmp.vbs 内容是固定的,又不涉及密码啊等安全问题
就直接写好了,不用批处理每次动态生成啊。

方法二:你说的问题与批处理无关,是vbscript脚本里面的问题,遇到需要"符号的时候,用两个""表示
即所谓对"的转义处理

echo sh.SendKeys "netsh interface ip set address ""本地连接"" gateway=192.168.1.1 gwmetric=1

{ENTER}"
spark_li 2009-04-11
  • 打赏
  • 举报
回复
变通办法之一:既然你的telnet_tmp.vbs 内容是固定的,又不涉及密码啊等安全问题
就直接写好了,不用批处理每次动态生成啊。

方法二:你说的问题与批处理无关,是vbscript脚本里面的问题,遇到需要"符号的时候,用两个""表示
即所谓对"的转义处理

echo sh.SendKeys "netsh interface ip set address ""本地连接"" gateway=192.168.1.1 gwmetric=1

{ENTER}"

6,185

社区成员

发帖
与我相关
我的任务
社区描述
windows网络管理与配置
社区管理员
  • 网络管理与配置社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧