我希望我的代码采用i / p和o / p文件名,对i / p文件中存在的所有网站执行ping操作,并在输出文件中显示“可ping通”或“不可pinging”。 它不得显示任何ping结果。我不想使用子流程。 所有命令都必须支持命令提示符(Windows)。
该代码运行正常,但是ping结果在执行时显示。我不想显示它。
我试图将结果重定向到一个名为scrap.txt的文档,但这似乎不起作用。
import os
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
fname1 = input('Enter the file name to read: ')
fname2=input('enter filenme to write:')
finp = open(fname1,'r')
fout=open(fname2,'w')
for line in finp:
os.system('@ECHO OFF')
response=os.system('ping -n 1 '+line+' > trash.txt')
if response==0:
os.system('echo ok')
fout.write(line+'\tis pingable\n')
else:
fout.write(line+'\tis not pingable\n')
答案 0 :(得分:0)
我不知道这是否对您有帮助,这是您的问题,但是您的ping
行存在无效参数问题。
您可以使用response=os.system('ping -n 1 '+line+' > trash.txt')
或类似的方法来代替使用response=os.system('ping '+line+' -n 1 > trash.txt')
。