0

我需要在 C:\Program Files\CONNECTION 下的 CMD 窗口上运行以下命令

 connect  "user_vip"

所以编写执行此操作的简短 VB 脚本

Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
USERC = """user_vip"""
Wscript.Echo USERC
oShell.run "cmd /k CD C:\Program Files\CONNECTION & connect USERC   " ,1 , true

运行 VB 脚本后,我从 CMD 窗口看到以下内容

connect USERC   

而不是我期望看到的:

 connect  "user_vip"

为什么oShell.run中的USERC参数没有得到真正的值 - “user_vip”

  • 备注 - Wscript.Echo USERC 实际上打印值 - “user_vip” 正如我所料
4

1 回答 1

3

VBScript 不会将变量内容插入到字符串文字中,并且 shell 命令中包含空格/空格的路径需要引号(“转义为”),因此请更改

oShell.run "cmd /k CD C:\Program Files\CONNECTION & connect USERC   " ,1 , true

oShell.run "cmd /k CD ""C:\Program Files\CONNECTION"" & connect " & USERC, 1, True

更新 wrt 评论:

>> userc = "abc"
>> WScript.Echo "cmd /k CD ""C:\Program Files\CONNECTION"" & connect " & USERC
>>
cmd /k CD "C:\Program Files\CONNECTION" & connect abc
于 2013-08-07T16:48:40.530 回答