如何从node.js应用程序获取现有的php / python版本号

时间:2015-12-31 05:34:14

标签: php node.js

我正在尝试使用commander模块创建命令行node.js app。这个应用程序将根据我的机器上安装的PHP版本下载几个文件。有人可以帮我提供如何从node.js应用程序获取php版本号的示例

我尝试了如下所示的东西,但dint工作,我会用php -v替换npm -v

var exec = require('child_process').execFile;    
exec('npm -v', function(err, data) {  
    console.log(err)
    console.log(data.toString());                       
}); 

错误:

{[错误:产生npm -v ENOENT]   代码:' ENOENT',   错误:' ENOENT',   系统调用:'产生npm -v',   路径:' npm -v',   cmd:' npm -v' }

1 个答案:

答案 0 :(得分:1)

child_process.exec()对我很好:

var exec = require('child_process').exec;
exec('php -r "echo phpversion();"', function(err, stdout, stderr) {
  console.dir(stdout.toString());
});

// Outputs:
// '5.6.11-1ubuntu3.1'

对于python,你可以这样做:

var exec = require('child_process').exec;
exec('python -c "import platform; print(platform.python_version())"',
     function(err, stdout, stderr) {
  console.dir(stdout.toString());
});

// Outputs:
// '2.7.10'