linux shell启动多个脚本,在并行bash脚本中运行多个脚本

这个问题已经在这里有了答案:

如何从bash脚本并行运行多个程序?                                     13个答案

我有一个bash脚本,其中包含串联运行的其他脚本。 但是,所有这些都需要花费大量的时间来运行。 有没有一种方法可以并行运行这些脚本来提高整体性能? 它们彼此独立。

它看起来类似于:

#!/bin/bash

#some code here

cppcheck.sh

churn.sh

run.sh

更新:

**git log --pretty=format: --numstat | perl -ane'$c{$F[2]} += abs($F[0]+$F[1])

if $F[2];END {print "$_\t$c{$_}\n" for sort keys %c}' > ${OUTPUT_DIR}/churn.txt**

sed -i -e '/deps/d;/build/d;/translations/d;/tests/d' -e 30q ${OUTPUT_DIR}/churn.txt

sort -r -n -t$'\t' -k2 ${OUTPUT_DIR}/churn.txt -o ${OUTPUT_DIR}/churn.txt

echo "set term canvas size 1200, 800; set output '${OUTPUT_DIR}/output.html';

unset key; set bmargin at screen 0.4; set xtics rotate by -90 scale 0,0;

set ylabel 'Number of lines changed (total)'; set title 'Files with high churn

level';set boxwidth 0.7; set style fill solid; set noborder;

plot '${OUTPUT_DIR}/churn.txt' using 2:xticlabels(1) with boxes" | gnuplot

echo "finished running churn.sh!"

这是churn.sh中的代码。 粗体命令需要40秒钟的时间才能实现。 如果在主脚本中我在churn.sh&之后加上&符,则会引发错误,指出sed无法读取churn.txt文件(因为尚未创建)。 似乎不会等到输出保存到文件中。 我在该命令后插入了wait,但没有帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值