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

时间:2014-05-14 14:29:10

标签: javascript windows command-line phantomjs casperjs

我试图通过命令行将参数传递给casperJS。我正在执行像

这样的事情
> casperjs ..\test.js " \' { function ( var ) \'     asdf"

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

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

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

当我结束并打印出论据时,我得到了

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

注意所有已删除/截断/无关的空格。

如何逃避我的字符串,以便我的js应用程序在不丢弃内容的情况下获取1参数中的实际字符串?

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

1 个答案:

答案 0 :(得分:0)

如果您想在文件中找回自定义参数,我真的不明白您想要做什么:

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

您可以在文件中找回内容:var customArg = casper.cli.get('customArgument');

这不是你想要的?