`ping` 命令有什么用?

`ping` 命令有什么用?

我正在做一些 ping 测试。

这是什么ping -c 1意思?这个命令有什么用?为什么我会在 bash 脚本中找到它?

答案1

该命令表示 ping 某物 1 次(1 次计数)。如果没有-c,它会继续 ping IP 地址,直到您告诉它停止。在编写脚本时,我喜欢至少计数 2 次,以防第一次 ping 失败。

您可以使用它来检查 IP 地址是否有效,然后检查结果。

terrance@terrance-ubuntu:~$ ping -c 1 10.0.0.254
PING 10.0.0.254 (10.0.0.254) 56(84) bytes of data.
From 10.0.0.100 icmp_seq=1 Destination Host Unreachable

--- 10.0.0.254 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
terrance@terrance-ubuntu:~$ echo $?
1

上述1意思是无法 ping 通该地址。

terrance@terrance-ubuntu:~$ ping -c 1 10.0.0.253
PING 10.0.0.253 (10.0.0.253) 56(84) bytes of data.
64 bytes from 10.0.0.253: icmp_seq=1 ttl=255 time=0.584 ms

--- 10.0.0.253 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.584/0.584/0.584/0.000 ms
terrance@terrance-ubuntu:~$ echo $?
0

以上0表示命令没有错误退出。

因此在脚本中,您可以像这样使用它:

#!/bin/bash

ping -c 2 10.0.0.253

case $? in
0) echo "The host is alive.";;
1) echo "The host is not responding.";;
esac

希望这可以帮助!

相关内容