嘗試通過 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()
uj5u.com熱心網友回復:
這是你想要的嗎?
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
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/473568.html
上一篇:自定義Java單位長度轉換器,帶有json檔案中的選項
下一篇:如何用bs4替換html中的標簽
