通过 linux ping 并在 python 中获得输出

ping through linux and get output in python

我正在尝试创建一个小脚本来提供 whois 和外部 ip 并 ping 一个站点以找到它的状态。我的代码 运行ning 正常,除了 ping 部分。它正在 ping 但不是我要求的 3 限制。我正尝试在 ubuntu 服务器中 运行 它有什么建议吗?

import os

os.system("clear") # clear the screen

inp = input("Enter your choice from the menu: \n1) To find your external IP address\n2) To check domain name whois information\n3) To check if the website or ip address is up\n")

if (inp == "1"):
 print("Your external ip address is: ") # me trying to be smart XD
 ip = os.system("dig +short myip.opendns.com @resolver1.opendns.com")
 #print("Your external ip address is: %d" % ip)

elif (inp == "2"):

 domain = input("Enter the domain you want to whois it: \n")

 info = os.system("whois %s" % domain)
 print(info)

elif (inp == "3"):
 target = input("Enter the url or ip address you want to check:\n")

 for x in range(3):
     response = os.system("ping %s" % target)

 if (response == 1): # how can I decide based on response result ?
     print("%s is up" % target)
 else:
     print("%s is down" % target)

尝试将计数 -c 选项添加到您的命令中:

target = "whosebug.com"
response = os.system("ping %s -c 3" % target)

if response is not 0:
    print("failed")
else:
    print("success")

你也可以取消循环...