var sys = require('sys'),
exec = require('child_process').exec;
exec("cd /home/ubuntu/distro", function(err, stdout, stderr) {
console.log("cd: " + err + " : " + stdout);
exec("pwd", function(err, stdout, stderr) {
console.log("pwd: " + err + " : " + stdout);
exec("git status", function(err, stdout, stderr) {
console.log("git status returned " ); console.log(err);
})
})
})
cd: null :
pwd: null : /
git status returned
{ [Error: Command failed: fatal: Not a git repository (or any of the parent directories): .git ] killed: false, code: 128, signal: null }
nodeJS exec 不适用于“cd”shell cmd。如下所示, pwd 有效, git status 正在尝试工作但失败,因为它没有在 git 目录中执行,但 cd cmd 无法阻止其他 cmd 的进一步成功执行。在 nodeJS shell 以及 nodeJS+ExpressJS 网络服务器中尝试过。