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


How to get existing php/python version number from node.js app

我试图使用命令模块创建一个命令行node.js应用程序。这个应用程序会下载一些基于安装在我机器上的php版本的文件。有人能帮我提供如何从node.js应用程序获取php版本号的示例吗

我尝试了下面的方法,但效果很好,我会在之后用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",syscall:'派生npm-v',路径:'npm-v',cmd:'npm-v'}

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'