Linux Bash脚本同时ping多个主机

时间:2013-04-02 03:11:49

标签: linux multithreading bash scripting background-process

我有一个包含500个服务器名称列表的文本文件。我需要在循环中同时ping所有这些,而不是逐个ping,并将pingable放在一个文件中,将另一个文件中的unpingable放在另一个文件中。

我可以在后台运行每个ping或为每个ping生成一个新进程吗?实现这一目标的最快捷,最有效的方法是什么?

1 个答案:

答案 0 :(得分:4)

您可以使用xargs

来控制并行度
cat file-of-ips | xargs -n 1 -I ^ -P 50 ping ^

在这里,我们一次最多保留50次ping。 ip本身插入^;你可以在之前和之后提出论据。