我如何将转义的javascript字符串作为参数传递到windows命令行

How can I pass an escaped javascript string as an argument into windows command line?

本文关键字:参数传递 命令行 windows 字符串 javascript 转义      更新时间:2023-09-26

我试图通过命令行传递一个参数给casperJS。我正在执行类似

这样的命令
> casperjs ..'test.js " '' { function ( var ) ''     asdf"

这是将参数作为多个参数加载

casper.cli.args[0] == "''"
casper.cli.args[1] == "{"
casper.cli.args[2] == "function"
casper.cli.args[3] == "("
...

请注意,每次有空格字符时,它都是一个新的参数-我在参数周围放置的双引号显然不适用于空格字符。

当我连接并输出参数时,我得到

"''{function(var)''asdf"

注意空格都被删除/截断了。

我怎么能逃避我的字符串,使我的js应用程序得到实际的字符串在1个参数而不删除内容?

保持在我的,我还需要保持JS字符串的转义完整性,我传递,因为它需要下游解释。

我真的不明白你想做什么,如果你想在你的文件中获得一个自定义参数:

考虑您的命令是:casperjs test yourFile.js --customArgument=" '' { function ( var ) '' asdf"

你得到文件中的内容,像这样:var customArg = casper.cli.get('customArgument');

这不是你想要的?