Python调用ping命令

PING命令

subprocess模块可以调用系统命令,可以进行单个ip和多个ip的ping命令以及从文本读取数据和将结果写入文件来进行保存

Ping单个域名

#-8- coding:utf-8 -*-
import subprocess
import shlex
import time
sata_time = time.time()
ping = subprocess.run(shlex.split('ping -w 1 '+'www.baidu.com'))
print(f"累计花费时间:{int(time.time()-sata_time)}s")

Ping单个ip

#-8- coding:utf-8 -*-
import subprocess
import shlex
import time
sata_time = time.time()
ping = subprocess.run(shlex.split('ping -w 1 '+'36.152.44.96'))
print(f"累计花费时间:{int(time.time()-sata_time)}s")

Ping多个ip或者多个域名

#-8- coding:utf-8 -*-
import subprocess
import shlex
import time
sata_time = time.time()
line = ['www.baidu.com','www.qq.com','v.qq.com']
line2 = ['36.152.44.96','183.194.238.117','117.169.100.145']
for i in line:
    ping = subprocess.run(shlex.split('ping -w 1 '+i))
for i2 in line2:
    ping2 = subprocess.run(shlex.split('ping -w 1 '+i2))
print(f"累计花费时间:{int(time.time()-sata_time)}s")

Ping结果输出

#-8- coding:utf-8 -*-
import subprocess
import shlex
import time
sata_time = time.time()
line = ['www.baidu.com','www.qq.com','v.qq.com']
line2 = ['36.152.44.96','183.194.238.117','117.169.100.145']
for i in line:
    ping = subprocess.run(shlex.split('ping -w 1 '+i),stdout=subprocess.PIPE,stderr=subprocess.PIPE)
    p_ping = ping.stdout.decode('gbk')
    print(p_ping)
for i2 in line2:
    ping2 = subprocess.run(shlex.split('ping -w 1 '+i2),stdout=subprocess.PIPE,stderr=subprocess.PIPE)
    p_ping2 = ping2.stdout.decode('gbk')
    print(p_ping2)
print(f"累计花费时间:{int(time.time()-sata_time)}s")

从文本读取ip或域名并且输出到文本

#-8- coding:utf-8 -*-
import subprocess
import shlex
import time
sata_time = time.time()
with open('ip.txt','r') as f:
    liness = f.readlines()
    for i in liness:
        print(i.strip())
        ping = subprocess.run(shlex.split('ping -w 1 '+i),stdout=subprocess.PIPE,stderr=subprocess.PIPE)
        p_ping = ping.stdout.decode('gbk')
        with open('ip_ping.txt','a+') as f2:
            f2.write(p_ping)
            f2.close()
f.close()
print(f"累计花费时间:{int(time.time()-sata_time)}s")
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值