ping解析输出

发布于 2025-01-27 02:06:00 字数 530 浏览 1 评论 0原文

尝试通过ping ping IP地址来解析数据遇到困难。我一直在尝试从ping结果中解析数据,并像以下格式一样:

IP, TimeToPing (ms)
10.1.2.3, 10

这是脚本到目前为止的位置:

import sys
import ipaddress
import subprocess
import os
import re
#Main routine

def main():
    address = sys.argv[1]
    pingthis = ['ping', '-c', '1', address]
    header = "IP, TimeToPing (ms)"
    subprocess.call(pingthis)
    re.search(r'.* time=(.*) ms', os.system('ping -c1'))

if __name__ == "__main__":
    main()

Having trouble trying to parse data from pinging an IP address. I've been trying to parse data from the ping results and format it like:

IP, TimeToPing (ms)
10.1.2.3, 10

This is where the script is at so far:

import sys
import ipaddress
import subprocess
import os
import re
#Main routine

def main():
    address = sys.argv[1]
    pingthis = ['ping', '-c', '1', address]
    header = "IP, TimeToPing (ms)"
    subprocess.call(pingthis)
    re.search(r'.* time=(.*) ms', os.system('ping -c1'))

if __name__ == "__main__":
    main()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

泡沫很甜 2025-02-03 02:06:00

这是你想要的吗?

import re
import subprocess
import sys

from tabulate import tabulate


def main():
    address = sys.argv[1]
    pingthis = ['ping', '-c', '1', address]
    r = (
        subprocess
        .run(
            pingthis,
            stdout=subprocess.PIPE,
            check=True,
        )
        .stdout
        .decode('utf-8')
    )
    table = tabulate(
        [[address, (re.search(r'time=(\d+)', r).group(1))]],
        headers=["IP", "TimeToPing (ms)"],
        tablefmt="simple",
    )
    print(table)


if __name__ == "__main__":
    main()

Python Main.py 8.8.8.8的输出

IP         TimeToPing (ms)
-------  -----------------
8.8.8.8                 14

Is this what you want?

import re
import subprocess
import sys

from tabulate import tabulate


def main():
    address = sys.argv[1]
    pingthis = ['ping', '-c', '1', address]
    r = (
        subprocess
        .run(
            pingthis,
            stdout=subprocess.PIPE,
            check=True,
        )
        .stdout
        .decode('utf-8')
    )
    table = tabulate(
        [[address, (re.search(r'time=(\d+)', r).group(1))]],
        headers=["IP", "TimeToPing (ms)"],
        tablefmt="simple",
    )
    print(table)


if __name__ == "__main__":
    main()

Output for python main.py 8.8.8.8

IP         TimeToPing (ms)
-------  -----------------
8.8.8.8                 14
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文