在Python中,你可以使用subprocess
模块来执行ping命令
import subprocess
def ping(host, count=4, timeout=1):
# 设置ping命令的参数
parameters = ['ping', '-c', str(count), '-W', str(timeout)]
# 将目标主机添加到参数列表中
parameters.append(host)
# 执行ping命令
try:
output = subprocess.check_output(parameters, stderr=subprocess.STDOUT, text=True)
return output
except subprocess.CalledProcessError as e:
return f"Error: {e.output}"
# 使用示例
host = "example.com"
result = ping(host)
print(result)
在这个示例中,我们定义了一个名为ping
的函数,它接受三个参数:
host
:要ping的目标主机。count
:要发送的ping数据包数量,默认为4。timeout
:每个ping数据包的超时时间(以秒为单位),默认为1秒。我们使用subprocess.check_output()
函数执行ping命令,并将结果存储在output
变量中。如果ping命令成功执行,我们将返回output
;否则,我们将返回一个包含错误信息的字符串。