首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么Javascript中的bash脚本会以相反的顺序执行?

为什么Javascript中的bash脚本会以相反的顺序执行?
EN

Stack Overflow用户
提问于 2018-06-19 02:55:13
回答 1查看 56关注 0票数 2

我提前道歉,因为我对Javascript知之甚少,在Bash方面有更多的经验。我需要在中导入几个脚本并让JS运行它

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

var process = function (done) {
    var script1 = exec('sh script1.sh',
            (error, stdout, stderr) => {
                utils.output(`${stdout}`);
                utils.output(`${stderr}`);
                if (error !== null) {
                    utils.output(`exec error: ${error}`);
                }
            }); 

    var script2 = exec('sh script2.sh',
            (error, stdout, stderr) => {
                utils.output(`${stdout}`);
                utils.output(`${stderr}`);
                if (error !== null) {
                    utils.output(`exec error: ${error}`);
                }
            }); 

    utils.output(script1);
    utils.output(script2);
}

script1.sh:

echo "==== script 1 ===="

script2.sh:

echo "==== script 2 ===="

输出:

==== script 2 ====
==== script 1 ====

为什么这些输出的顺序是相反的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-19 03:30:15

正如Barbar所说,这是因为exec()是异步的。

谢谢大家。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50915817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档