为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 ping 上抑制终端输出,但仍然能够验证响应?

如何在 ping 上抑制终端输出,但仍然能够验证响应?

红糖糍粑 2022-01-11 17:00:28
因此,每当我发送数据包时,我一直在努力抑制终端输出。我只想验证响应(0,2 或其他),这样我的终端就不会收到标准的“ping 统计信息、收到的数据包、数据包丢失”的垃圾邮件。我将如何在代码方面进行此操作?我不是在寻找终端/bash“方式”。def ping():    hosts = open('hosts.txt', 'r')    for host_ip in hosts:       res = subprocess.call(['ping', '-c', '1', host_ip])       if res == 0:          print "ping to", host_ip, "OK"       elif res == 2:          print "no response from", host_ip       else:          print "ping to", host_ip, "failed!"
查看完整描述

1 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

我只是使用 python 的subprocess.Popen类ping 到 google dns 服务器,除了我在代码中打印的返回码之外,它什么都不返回到终端


import subprocess

process = subprocess.Popen(['ping','-c' ,'1', '8.8.8.8'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)

stdout, stderr = process.communicate()

returncode = process.returncode

print(returncode)

输出


0


查看完整回答
反对 回复 2022-01-11
  • 1 回答
  • 0 关注
  • 93 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信