python

Python中如何捕获ping命令异常

小樊
82
2024-12-07 13:32:39
栏目: 编程语言

在Python中,你可以使用subprocess模块来执行ping命令并捕获异常

import subprocess

def ping(host):
    try:
        # 在Windows系统中使用以下命令
        # 在Linux和macOS系统中使用以下命令
        command = ["ping", "-c", "1", host]
        subprocess.run(command, check=True)
        print(f"{host} is reachable.")
    except subprocess.CalledProcessError as e:
        print(f"{host} is not reachable. Error: {e}")

if __name__ == "__main__":
    host = input("Enter the host to ping: ")
    ping(host)

在这个示例中,我们定义了一个名为ping的函数,它接受一个主机名作为参数。我们使用subprocess.run()函数来执行ping命令,并通过设置check=True参数来捕获任何非零退出代码的异常。如果ping成功,我们将输出主机名是可达的。如果ping失败,我们将捕获subprocess.CalledProcessError异常并输出相应的错误信息。

0
看了该问题的人还看了