bash - 如何在脚本中使用 ping

标签 bash ssh ping

我想要一个可以执行以下操作的 bash 脚本:

for c in computers:
do
   ping $c
   if ping is sucessfull:
      ssh $c 'check something'
done

如果我只执行 ssh 并且计算机没有响应,则超时需要很长时间。所以我在考虑使用 ping 的输出来查看计算机是否还活着。我怎么做?其他想法也很棒

最佳答案

使用ping的返回值:

for C in computers; do
  ping -q -c 1 $C && ssh $C 'check something'
done
如果单个 ping (-c 1) 成功,

ping 将以值 0 退出。在 ping 超时时,或者如果 $C 无法解析,它将以非零值退出。

关于bash - 如何在脚本中使用 ping,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1727907/

相关文章:

java - selenium 服务器,selenium 客户端,在 UBUNTU GUI 服务器上

batch-file - 从文本文件中读取字符串并使用批处理文件将其复制到另一个文本文件中

python - 如何使用 native python 执行 ping 或 traceroute?

php - 如何测试 composer.lock 是否是最新的?

linux - Bash 脚本检查进程是否正在运行并读取用户输入以在必要时启动

bash - 在具有变量扩展的文件路径字符串中将 ""替换为 "\"

带有http的git克隆在gitlab中不起作用

bash - 在 bash 中捕获 inotifywait 的输出

windows - ssh 在 Windows 命令提示符下验证了 git 访问?

c++ - 如何使用 C++ ping 一个 php 页面?