python 从 txt 文件中 ping ip 地址

python ping ip adress from txt file

trhe 代码从 txt 中获取 ip 地址。当服务器在线时写入新的 txt 文件。但是这段代码只写了 txt file.And 中的最后一个文件,从来没有时间进入其他地方。我需要帮助

tahnks


import os


file = open("IPs.txt","r+")

with open("IPs.txt","r") as file:

  for line in file:
     response =  os.system("ping   " + line)

     if response == 0:
        with open("IPsCheck.txt","w") as file:
            print(line)
            file.write(line)




     else:
        print("server not available ")

您需要以附加模式打开输出文件 (IPsCheck.txt):"a+"

点击这里了解更多https://www.guru99.com/reading-and-writing-files-in-python.html#2

下面的代码似乎有效。如果您想从 ips 文件中读取 ips,请将 DEBUG 更改为 False。

import os

DEBUG = True

DEBUG_IPS = ['1.1.1.1', '8.8.8.8']

if DEBUG:
    ips = DEBUG_IPS
else:
    with open("IPs.txt", "r+") as ips_file:
        ips = [ip.strip() for ip in ips_file.readlines()]

with open("IPsCheck.txt", "w") as available_ips_file:
    for ip in ips:
        response = os.system('ping {}'.format(ip))
        if response == 0:
            available_ips_file.write(ip)
        else:
            print('server {} not available'.format(ip))