对特定的网址进行 Ping 吗?

对特定的网址进行 Ping 吗?

我正在编写一个 bash 脚本来 ping 某个网址。问题是,当我说:
ping https://www.dictionary.com/browse/word 然后 ping 说
ping: https://www.dictionary.com/browse/word: Name or service not known
有人能帮我解决这个问题吗?我可以使用什么程序来 ping https 服务器。
我必须在那里使用斜线,因为我想 ping 那个特定的页面。
提前谢谢您。

答案1

您可以使用httping

httping https://www.dictionary.com/browse/word

如果您想检查您的单词是否存在,您需要指定,只有状态 200 才可以。

httping -m -o 200 https://www.dictionary.com/browse/word

并且也许添加-c 11 次探测后退出并-l避免出现 SSL 已自动启用的信息消息。

输出:

$ httping -l -m -o 200 -c1 https://www.dictionary.com/browse/word
69,734001
$ httping -l -m -o 200 -c 1 https://www.dictionary.com/browse/not_existing_word
-1

通过安装

sudo apt install httping

如果httping没有其他选择,当然curl可能打印请求的状态代码仅有的。

$ curl -s -o /dev/null -w "%{http_code}\n" https://www.dictionary.com/browse/word
200
$ curl -s -o /dev/null -w "%{http_code}\n" https://www.dictionary.com/browse/not_existing_word
301

答案2

Ping 仅识别主机名和 IP 地址。因此,在您的示例中,它应该是:

ping www.dictionary.com

但即使这样也不一定能起作用,因为 icmp 数据包(ping 是其中的一部分)可能会在到达目的地的途中被路由器或防火墙阻止。

相关内容