同时/并行地在3个服务器列表上运行相同的bash脚本
我有一个bash脚本,可以在服务器列表上执行以下3个步骤,并且工作正常。 步骤1:获取每个服务器的文件(包括我正在查找的特定参数) 步骤2:解码文件(从十六进制到txt) 步骤3:从服务器的解码文件中筛选我要查找的特定参数,并显示输出 这里的问题是需要花费太多的时间才能获得所需的输出,我必须在大量的服务器上完成。是否有可能在后台执行此操作,并在3个服务器列表上并行运行此bash脚本?这是因为我想在不同的虚拟机上运行它,但每个虚拟机每次尝试时都要同时运行3个服务器列表,以更快地获得结果。我现在通过下面的while循环对它进行测试,我正在寻找它来扩展3个列表(list.txt//list2.txt&list3.txt): 读行时同时/并行地在3个服务器列表上运行相同的bash脚本,bash,multiprocessing,sametime,Bash,Multiprocessing,Sametime,我有一个bash脚本,可以在服务器列表上执行以下3个步骤,并且工作正常。 步骤1:获取每个服务器的文件(包括我正在查找的特定参数) 步骤2:解码文件(从十六进制到txt) 步骤3:从服务器的解码文件中筛选我要查找的特定参数,并显示输出 这里的问题是需要花费太多的时间才能获得所需的输出,我必须在大量的服务器上完成。是否有可能在后台执行此操作,并在3个服务器列表上并行运行此bash脚本?这是因为我想在不同的虚拟机上运行它,但每个虚拟机每次尝试时都要同时运行3个服务器列表,以更快地获得结果。我现在通过
;do./TA.sh$行;完成
其中TA.sh是我的主bash脚本,list.txt是服务器列表
希望它足够清楚。如果您能支持并留下您的评论,我将不胜感激。谢谢。请看GNU并行应用程序,这正是您想要的。非常感谢@Jiri B我在后台通过screen screen-S session的支持做到了这一点。
screen
,与tmux
相同,它是终端多路复用器,也就是说,它允许在一个会话中使用更多的终端。如果您想解除进程与终端的关联,可以使用nohup
。
while read line;do ./TA.sh $line; done < list.txt