& ~/log &" & 但这需要时间,-6ren">
gpt4 book ai didi

bash - 在多台机器上并行运行脚本

转载 作者:行者123 更新时间:2023-11-29 09:24:10 26 4
gpt4 key购买 nike

我很想知道在多台机器的后台尽快启动脚本的最佳方式。目前,我正在这样做

为每个 IP 地址运行

ssh user@ip -t "perl ~/setup.pl >& ~/log &" &

但这需要时间,因为它会逐一尝试通过 SSH 连接到每一个以在该机器的后台启动 setup.pl。这需要时间,因为我有大量机器来启动此脚本。

我尝试使用 GNU 并行,但无法使其正常工作:

seq COUNT | parallel -j 1 -u -S ip1,ip2,... perl ~/setup.pl >& ~/log

但是好像不行,我在目标机器上看到GNU并行启动的脚本,但是停滞不前。我在日志中没有看到任何内容。

我在使用 GNU parallel 时做错了什么?

最佳答案

GNU Parallel 默认假定它在哪台机器上运行作业并不重要——这通常适用于计算。就您而言,这很重要:您希望每台机器上都有一份工作。此外,GNU Parallel 会给出一个数字作为 setup.pl 的参数,而您显然不希望这样。

幸运的是,GNU Parallel确实使用--nonall支持您想要的:

http://www.gnu.org/software/parallel/man.html#example__running_the_same_command_on_remote_computers

我鼓励您也阅读并理解其余示例。

关于bash - 在多台机器上并行运行脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17006243/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com