你可以从ExpressJS应用程序中调用一个shell脚本吗?

5

有人知道在expressjs应用程序中是否可以调用shell脚本吗?

我正在编写一个应用程序,希望在git post-receive钩子之后移动一些文件,但在这部分卡住了。

2个回答

7

没错!由于Express只是node,您可以使用exec执行服务器允许的任何命令,如下所示:

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

function puts(error, stdout, stderr) { sys.puts(stdout) }
exec("ls -la", function(error, stdout, stderr) {
  if (!error) {
    // things worked!
  } else {
    // things failed :(
  }
});

3
“Express”只是NodeJS的一个框架。
NodeJS可以通过使用process对象或child_process对象来运行命令。

但是这可以通过expressjs调用吗? - jrutter
为什么你想从Express中调用它,当Node已经本地处理了它? - Sterling Archer
2
@jrutter Express只是在NodeJS下运行的框架。如果你可以从NodeJS中做到,那么你也可以从Express中做到:Express只是另一个Node模块。 - Dave Newton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接