python-3.x - 使用 DEVNULL 等抑制输出/CMD 后,Ping 在 Windows 上不起作用
问题描述
我是 Python 新手-我尝试了在帖子中共享的用于 ping / multi-ping 的代码,但不幸的是它对我不起作用(共享我在下面运行的实际代码)。
注意-但是,只要我不抑制输出(例如使用 DEVNULL 和其他技术),它就可以正常工作
平台 - Windows 10 机器类型 - 托管在 AWS 云上的虚拟机。
我不确定该 VM 是否实际上限制了代码的潜力,但请您提供专家建议 - 如果可能,请您指导/分享解决方法以抑制输出。
另外,我想知道是否可以使用 OS.SYSTEM 来抑制输出,因为它工作正常,但不确定在抑制输出后也会停止。
议程 - 最终目标是在不显示命令提示符窗口的情况下 ping 多个 IP。
谢谢。
代码:
def ping(self):
fOPEN = open('IP_List.txt')
for IP_ADD in fOPEN:
IP_ADD = IP_ADD.strip()
status = subprocess.call(["ping", "-n", "1", "-w", "200", IP_ADD], stdout=subprocess.DEVNULL)
if status == 0:
print(IP_ADD + " -> Reachable\n")
else:
print(IP_ADD + " -> NOT Reachable\n")
解决方案
推荐阅读
- python - 在 python 中使用来自不同项目的代码的正确方法是什么?
- javascript - 菜单项打不开
- javascript - 多个目的地谷歌距离矩阵api
- html - 你能检查一个 URL 是来自 NFC 轻击还是来自在地址栏中手动输入?
- python - 如何将多个数字转换为字母?
- c - 为什么这个程序打印一个空行?
- javascript - 如何在 Angular 运行时更改提供者 useValue?
- python - 使用四边形提高积分精度
- linux - gcc linaro 链接器到库
- typescript - TypeScript 中的 useState 和 useContext