使用Node.js中的exec方法

使用Node.js中的exec方法,node.js,Node.js,我一直在关注Node.js上的一系列教程。为了演示使用exec的子进程,我在exec.js文件下得到了下面的代码。当我转到节点的命令行时,我键入 node exec.js 然后什么也没发生。为什么会这样 var exec=requirechild_process.exec 行政公开 你的代码适合我 要诊断和修复此问题,我将尝试: 在终端未使用节点中,验证是否打开http://www.linkedin.com 根本没用。您应该看到默认的web浏览器打开到相应的URL。若这并没有发生,那个么Nod

我一直在关注Node.js上的一系列教程。为了演示使用exec的子进程,我在exec.js文件下得到了下面的代码。当我转到节点的命令行时,我键入

node exec.js
然后什么也没发生。为什么会这样

var exec=requirechild_process.exec


行政公开

你的代码适合我

要诊断和修复此问题,我将尝试:

在终端未使用节点中,验证是否打开http://www.linkedin.com 根本没用。您应该看到默认的web浏览器打开到相应的URL。若这并没有发生,那个么Node就无法神奇地修复它。很可能,你需要这样做。 将URL用单引号括起来,以便更好地度量。在URL包含某些保留字符的某些情况下,这将为您提供保护

exec("open 'http://www.linkedin.com'");
添加回调,以便查看命令的输出并验证其是否成功完成

exec("open 'http://www.linkedin.com'", function (err, stdout, stderr) {
    console.log('err:', err);
    console.log('stdout:', stdout);
    console.log('stderr:', stderr);
});
理想的解决方案是使用一个已经存在的高质量模块来实现此目的。

对于Windows,请使用start命令,而不是open命令,该命令适用于Mac,如下所示:

exec("start http://www.linkedin.com");

@他的代码很好,适合我。将命令和参数作为一个大的喇叭字符串。也许你在想什么?而且open当然接受URL。来自man open:如果文件以URL的形式存在,则该文件将以URL的形式打开。您在哪个平台上运行?例如,Windows上没有打开命令。打开http://www.linkedin.com 从命令外壳为你工作?嘿,对不起,我花了这么长时间才回复。我使用的是Windows,所以你是对的,我不得不使用start命令。不客气。我还添加了一个指向npm模块的链接,该模块可以更好地解决跨平台的问题。如果我的回答对你有帮助,请接受我的回答。