如何使用os.system在Python中创建简单的ping并将结果保存到文件中

18 浏览
0 Comments

如何使用os.system在Python中创建简单的ping并将结果保存到文件中

此问题已有答案

Python:如何在运行os.system后获取stdout?[重复]

我用Python编写了这个简单的脚本:

import os
os.system("ping www.google.com")

在 Windows 的 cmd 交互模式下它可以工作,但是在 IDLE 上写就不行了(会出现一个黑色的 cmd 屏幕)。这是第一个问题。

第二件事是我想要做的:

我想要将 ping 的结果保存到文件中,应该怎么做呢?

我是 Python 的新手(两天);)

非常感谢。

admin 更改状态以发布 2023年5月21日
0
0 Comments

你可以使用 subprocess.check_output 保存输出。

    import subprocess
    with open('output.txt','w') as out:
        out.write(subprocess.check_output("ping www.google.com"))

output.txt

Pinging www.google.com [74.125.236.178] with 32 bytes of data:
Reply from 74.125.236.178: bytes=32 time=31ms TTL=56
Reply from 74.125.236.178: bytes=32 time=41ms TTL=56
Reply from 74.125.236.178: bytes=32 time=41ms TTL=56
Reply from 74.125.236.178: bytes=32 time=32ms TTL=56
Ping statistics for 74.125.236.178:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 31ms, Maximum = 41ms, Average = 36ms

0