关于node.js用child_process执行cd切换目录不工作

356 阅读1分钟

像你们看到的那样,node.js用child_process执行cd切换目录不工作。执行git status失败了,因为它没有在正确的工作目录。其它指令都是正常的。

icktoofay 回答:

每一条指令是在不同的进程中执行的。第一条 cd 指令只影响了它本身的进程。所以如果你想在指定文件夹执行 git 相关命令,你就需要指定执行路径:

exec('git status', {cwd: '/home/ubuntu/distro'}, /* ... */);

cwd只是exec众多参数中的其中一个.