同时/并行在 3 个服务器列表上运行相同的 bash 脚本

问题描述

我有一个 bash 脚本,它准备在服务器列表上执行以下 3 个步骤,并且它工作正常。 第 1 步:为每个服务器获取文件包括我正在寻找的特定参数) 第 2 步:解码文件(从十六进制到 txt) 第3步:从服务器的解码文件中过滤我正在寻找的特定参数并显示输出

问题就在这里 需要太多时间才能获得所需的输出,而且我必须在各种服务器上执行此操作。是否有可能在后台执行此操作并在 3 个服务器列表上并行运行此 bash 脚本?那是因为我想在单独的 VM 上运行它,但是每个 VM 每次尝试同时运行 3 个服务器列表,以便更快地获得结果。我现在正在通过下面的 while 循环测试它,我正在寻找将它扩展为 3 个列表(list.txt // list2.txt & list3.txt):

while read line;do ./TA.sh $line; done  < list.txt

其中 TA.sh 是我的主要 bash 脚本,而 list.txt 是服务器列表

希望它足够清楚。如果您能支持并留下您的评论,我将不胜感激。谢谢。

解决方法

查看 GNU 并行应用程序,这正是您想要的。