51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3787|回复: 3
打印 上一主题 下一主题

[原创] VBS脚本里,如何对{}进行转义?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-1-18 10:10:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
情况是这样,我要用VBS脚本在windows下用telnet命令登录linux系统然后进行一些操作

现在问题是这样,登录linux后,我需要执行下面语句:
ps -ef|grep Ddeploy=bmobile |grep -v grep|awk '{ print $2 }'|xargs -t -I{} kill -9 {};

其中这句命令里有几组{},试过很多种转义方法,都无效,请问一下在VBS脚本里该怎样进行转义才能让这句命令完整的在linux上执行?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    2#
    发表于 2010-1-18 10:15:29 | 只看该作者
    先看一下那些特殊的字符串需要转义。一般来说,这样的字符有:
    "\","$","(",")","*","+",".","[","?","^","{","|"

    在VBScript里面,转义就是在这些字符前面增加一个\ 符号。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2010-1-18 10:38:54 | 只看该作者

    回复 2# 的帖子

    早试过了,不行啊,看看是不是这样转的:
    WshShell.SendKeys"ps -ef|grep Ddeploy=bmobile |grep -v grep|awk '\{ print $2 \} '|xargs -t -I\{\} kill -9 \{\};"

    但是实际输出的内容为:ps -ef|grep Ddeploy=bmobile |grep -v grep|awk '\ 到这里之后就停止了,那个{ 还是没有转出来
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
     楼主| 发表于 2010-1-18 12:27:57 | 只看该作者

    回复 4# 的帖子

    真郁闷,整了半天,查了很多资料,用的转义方法都不管用,我又根据屏幕输出的规则,最后用这个方法把转义弄出来了

    WshShell.SendKeys"ps -ef|grep Ddeploy=bmobile |grep -v grep|awk '{{}Print $2{}}'|xargs -t -I{{}{}} kill -9 {{}{}};"

    输出:ps -ef|grep Ddeploy=bmobile |grep -v grep|awk '{ print $2 }'|xargs -t -I{} kill -9 {};

    用{{}转义成{   用{}}转义成}     。。。。。里面连$符号前都没用转义也能直接输出$ 。。。。。好奇怪
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-8 04:52 , Processed in 0.061043 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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