我正在尝试按顺序执行两个Windows命令并获得后一个的结果。类似的东西:
cd ${directory}
sfdx force:source:convert -d outputTmp/ --json
我浏览过并试过了一堆第三方库,比如node-cmd。但到目前为止我还没有运气。与node-cmd示例一样:
cmd.get(
`cd ${directory}
sfdx force:source:convert -d outputTmp/ --json`,
function(err, data, stderr) {
这在我的macOS机器上非常有效。但在Windows上,它往往只执行第一个命令。
无论如何我可以解决这个问题吗?即使是一些只需要cd {directory} + real命令的人也可以真的很有帮助
答案 0 :(得分:2)
你可以试试这个:
const exec = require('child_process').exec;
exec(`cd dir
sfdx force:source:convert -d outputTmp/ --json`, (err, stdout, stderr) => {
if (err) {
// node couldn't execute the command
return;
}
console.log(stdout);
});
或使用&&
没有反引号:
const exec = require('child_process').exec;
exec('cd dir && sfdx force:source:convert -d outputTmp/ --json', (err, stdout, stderr) => {
if (err) {
// node couldn't execute the command
return;
}
console.log(stdout);
});