首页 > 解决方案 > 并行执行脚本

问题描述

我有脚本,它将作为来自中央服务器的参数执行,如下所示 -

`SCRIPT.sh host1`   

像上面一样,我必须在许多主机上执行。所以每个主机需要 1 分钟才能执行。

SCRIPT.sh host1 
SCRIPT.sh host2 
SCRIPT.sh host3
......
.........

到目前为止,我正在尝试以下简单的 for 循环,这需要太多时间。

for i in `cat host_list`;do echo $i;SCRIPT.sh $i;done

任何可能并行执行上述 for 循环,我的意思是一次 50/100 个主机。?请有任何建议。

标签: bash

解决方案


您可以使用“&”在不同的 shell 中运行并行批处理命令。

for i in `cat host_list`;do echo $i;SCRIPT.sh $i & done

此外,如果有很多 shell 脚本,您可以在它们之间放置“等待”。


推荐阅读