使用node.js和coffeescript执行Ubuntu命令
我正在使用child_process.exec
在coffeescript中使用node.js执行Ubuntu命令。 当我执行以下命令时:
list = child_process.exec("ls") print list
它打印这个:
[Object Object]
为什么不打印ls
命令的正确输出? 我该怎么做才能得到正确的命令输出?
您正尝试同步运行asynchronousfunction。 正确的方法是:
var exec = require('child_process').exec; exec('ls', function (error, stdout, stderr) { console.log(stdout); });
来源: https : //nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback
如果你真的想同步执行一个命令,你可以使用execSync。 不过,我build议不要这样做,因为它会阻止你的节点代码做任何事情,直到过程结束。
ExecSync: https ://nodejs.org/api/child_process.html#child_process_child_process_execsync_command_options
find了! 可以使用 – >来访问
print list.main.<attribute_name>