String VBS-忽略\特殊字符属性

String VBS-忽略\特殊字符属性,string,vbscript,escaping,quotation-marks,String,Vbscript,Escaping,Quotation Marks,由于\escape字符,我很难在VBS中正确调用命令行 我希望写入命令行的字符串输出是 batch_name=\"myBatch\" 它被传递到一个.exe文件。不幸的是,由于\字符的工作方式,我只能写 batch_name=\myBatch\ batch_name=\""myBatch\"" 我无法在输出中获得\!下面是我代码的修改版本 BATCH_NAME = "myBatch" outputString = "batch_name=\" & BATCH_NAME &

由于\escape字符,我很难在VBS中正确调用命令行

我希望写入命令行的字符串输出是

batch_name=\"myBatch\"
它被传递到一个.exe文件。不幸的是,由于\字符的工作方式,我只能写

batch_name=\myBatch\
batch_name=\""myBatch\""
我无法在输出中获得\!下面是我代码的修改版本

BATCH_NAME = "myBatch"

outputString = "batch_name=\" & BATCH_NAME & "\"
我尝试过很多方法——将字符串与Chr(34)连接起来,使用多个双引号,甚至尝试将()“”替换为“”,但似乎都不起作用

有什么想法吗

我试了一下,然后

outputString = "batch_name=\""" & BATCH_NAME & "\"""
为我工作,给出结果
batch\u name=\“myBatch\”


对你有用吗?如何在shell中执行此命令?

您可以执行以下操作

outputString = "batch_name=" & chr(92) & chr(34) & BATCH_NAME & chr(92) & chr(34)

您是对的,这在一个简单的测试环境中工作,但在整个代码中运行时,它会输出“myBatch”。我的代码中一定有其他原因导致了错误。可能是因为BATCH_NAME作为参数从另一个.vbs文件传递,而传递的字符串有空格?我前面没有这个文件,但这一行是传递给另一个系统的参数字符串的一部分,通过wscript.run()调用,没有更多数据(例如传递的参数)或更多代码,我恐怕帮不了你。