我知道我可能非常怀念这一切,
但是有人知道为什么它总是返回一个错误吗?
$ node -v && node
v0.4.6
> var cmd = 'osascript -e "open location \"http://google.com\""';
> require('child_process').exec(cmd, function (error, stdout, stderr) { console.log(error); });
//Error message
> {
stack: [Getter/Setter],
arguments: undefined,
type: undefined,
message: 'Command failed: 15:20: syntax error: A “:” can’t go after this identifier. (-2740)\n',
killed: false,
code: 1,
signal: null
}也许这与cmd中的双引号有关
发布于 2011-06-07 19:24:02
可能只是一个引用问题。这一条对我很有效:
$ node -v && node
v0.4.8
> var cmd = 'osascript -e \'open location \"http://google.com\"\'';
> require('child_process').exec(cmd, function (error, stdout, stderr) { console.log(error); });顺便说一句,如果你只是想打开一个网址,不需要通过AppleScript。只需使用open命令:
> var cmd = 'open \"http://google.com\"';发布于 2018-07-03 01:26:41
在当前节点版本中通过反引号简化了这一点
$ node -v && node
v10.5.0
> let cmd = `osascript -e 'open location "http://google.com"'`
> require('child_process').exec(cmd, function (error, stdout, stderr) { console.log(error) })和open命令
var cmd = `open "http://google.com"`https://stackoverflow.com/questions/6262802
复制相似问题