2015-09-09 3 views
0

В консоли узла:Как использовать Exec, чтобы открыть Google Chrome

> var a = require('child_process') 
> a.execSync('open /Applications/Google Chrome.app') 
The files /Applications/Google and /Users/awguo/Chrome.app do not exist. 
Error: Command failed: open /Applications/Google Chrome.app 
The files /Applications/Google and /Users/awguo/Chrome.app do not exist. 

    at checkExecSyncError (child_process.js:1339:13) 
    at Object.execSync (child_process.js:1379:13) 
    at repl:1:3 
    at REPLServer.defaultEval (repl.js:132:27) 
    at bound (domain.js:254:14) 
    at REPLServer.runBound [as eval] (domain.js:267:12) 
    at REPLServer.<anonymous> (repl.js:279:12) 
    at REPLServer.emit (events.js:107:17) 
    at REPLServer.Interface._onLine (readline.js:214:10) 
    at REPLServer.Interface._line (readline.js:553:8) 
> 

Существует пространство между Google и Chrome.app. Что я должен сделать, чтобы сделать эту работу?

Спасибо,

ответ

0

Попробуйте положить путь между "" символов:

var a = require('child_process') 
a.execSync('open "/Applications/Google Chrome.app"') 

или между 'символов:

var a = require('child_process') 
a.execSync("open '/Applications/Google Chrome.app'") 

Спасаясь пространство с обратной косой черты (\) не работает должным образом и приводит к ошибке «Нет такого файла или каталога»

0

Вы также можете использовать это на O SX:

var cp = require('child_process'); 
cp.exec("open -a 'google chrome'"); 

Примечание: Это работает только на OSX.

Смежные вопросы