casperjs 如何使用 space 传递参数?
How casperjs passing arguments with space?
casperjs script.js "myurl" "myemail" "my name"
这是脚本:
url = (casper.cli.get(0));
email = (casper.cli.get(1));
name = (casper.cli.get(2));
this.echo(name);
console.log(name);
结果是:my
(而不是 my name
)。
我也试过用单引号。
您可以只用反斜杠转义空格,不要使用引号,例如:
casperjs test.js myurl myemail my\ name
我不确定它是否依赖于您使用的控制台,在 ubuntu (docker) 下对我有用:
var casper = require('casper').create();
var targetUrl = 'http://www.test.com/';
casper.start(targetUrl, function() {
url = (casper.cli.get(0));
email = (casper.cli.get(1));
name = (casper.cli.get(2));
this.echo(url);
this.echo(email);
this.echo(name);
console.log(name);
});
casper.run();
结果是:
myurl
myemail
my name
my name
对于有效的 windows 命令行:
casperjs test.js myurl myemail \"my name\"
casperjs script.js "myurl" "myemail" "my name"
这是脚本:
url = (casper.cli.get(0));
email = (casper.cli.get(1));
name = (casper.cli.get(2));
this.echo(name);
console.log(name);
结果是:my
(而不是 my name
)。
我也试过用单引号。
您可以只用反斜杠转义空格,不要使用引号,例如:
casperjs test.js myurl myemail my\ name
我不确定它是否依赖于您使用的控制台,在 ubuntu (docker) 下对我有用:
var casper = require('casper').create();
var targetUrl = 'http://www.test.com/';
casper.start(targetUrl, function() {
url = (casper.cli.get(0));
email = (casper.cli.get(1));
name = (casper.cli.get(2));
this.echo(url);
this.echo(email);
this.echo(name);
console.log(name);
});
casper.run();
结果是:
myurl
myemail
my name
my name
对于有效的 windows 命令行:
casperjs test.js myurl myemail \"my name\"