Javascript 使用Node.js与bash接口

Javascript 使用Node.js与bash接口,javascript,node.js,bash,apache,Javascript,Node.js,Bash,Apache,我在Ubuntu上运行apache和Node.js 是否有一种方法可以通过编程检查apache服务是否正在使用Node运行?如果没有运行,允许Node.js启动/重新启动服务,也可以使用相同的代码运行其他进程,如MySQL 我还想找到一种方法,使节点执行“ps-u user”,并将输出捕获到js字符串或对象中 我已经看过Node.js子进程,但我无法理解它 提前感谢您可以使用“”模块的“exec”方法从节点应用程序执行命令,并将其输出作为参数传递给回调函数 var exec = require(

我在Ubuntu上运行apache和Node.js

是否有一种方法可以通过编程检查apache服务是否正在使用Node运行?如果没有运行,允许Node.js启动/重新启动服务,也可以使用相同的代码运行其他进程,如MySQL

我还想找到一种方法,使节点执行“ps-u user”,并将输出捕获到js字符串或对象中

我已经看过Node.js子进程,但我无法理解它

提前感谢

您可以使用“”模块的“exec”方法从节点应用程序执行命令,并将其输出作为参数传递给回调函数

var exec = require("child_process").exec;

exec("ps -u user", function (error, stdout, stderr) {
    var myResult = stdout;
    //doSomething
});
您可以使用“”模块的“exec”方法从节点应用程序执行命令,并将其输出作为参数传递给回调函数

var exec = require("child_process").exec;

exec("ps -u user", function (error, stdout, stderr) {
    var myResult = stdout;
    //doSomething
});

您还可以使用shelljs-,它有许多函数,直接进入shell,并且是跨平台的。ps命令不是其中之一,所以使用exec与child_进程类似

require('shelljs/global');    
exec('ps -aux | grep apache')
使用exec,您也可以启动/重新启动服务,但您需要以root用户身份运行节点进程,这不是最好的选择。或者专门为apache创建用户组

要运行“ps-u用户”,请使用相同的。它将返回对象,其中包含您需要的有关进程的所有信息

exec('ps -u user');

然后根据需要继续输出。

您还可以使用shelljs-,它有许多功能,可以直接转到shell,并且是跨平台的。ps命令不是其中之一,所以使用exec与child_进程类似

require('shelljs/global');    
exec('ps -aux | grep apache')
使用exec,您也可以启动/重新启动服务,但您需要以root用户身份运行节点进程,这不是最好的选择。或者专门为apache创建用户组

要运行“ps-u用户”,请使用相同的。它将返回对象,其中包含您需要的有关进程的所有信息

exec('ps -u user');

然后根据需要继续输出。

使用spawn,您可以运行shell脚本。所以,如果您编写了一个shell脚本来检查某个进程是否正在运行,那么您应该让我们生成一个脚本来运行它。类似于。。。
var child=spawn('sh',[\uu dirname+'/some status shell script.sh'],{env:process.env})


同样,您可以使用spawn访问mysql数据库…类似于使用spawn运行shell脚本。所以,如果您编写了一个shell脚本来检查某个进程是否正在运行,那么您应该让我们生成一个脚本来运行它。类似于。。。
var child=spawn('sh',[\uu dirname+'/some status shell script.sh'],{env:process.env})

同样,您可以使用spawn访问mysql数据库…类似于