尝试使用 python 对多台电脑执行 ping 操作。 .
Tryin to do ping to several pc with python. .
我正在尝试读取一个包含 300 台计算机的 ips 的文件,然后写入一个新文件(如果存在或不存在)。
import os
import datetime
import platform
import subprocess
date = datetime.datetime.now()
day = date.day
hour = date.hour
os.chdir ('Path')
openips = open ("ips.txt","r")
ipfile = openips.readlines()
print (ipfile)
for ips in ipfile():
ips = ips.strip()
print (ips)
args = ["ping", "-n", "4", "-l", "1", "-w", "1000", ips]
pping = subprocess.Popen(args, stdout = subprocess.PIPE, stderr = subprocess.PIPE)
for line in pping.stdout:
print (line)
os.chdir ('Path')
presult = open ("pingresults_{}_{}.txt".format(day,hour), 'a')
presult.write ('{}_{}\n'.format(ips, line))
presult.close ()
不知道为什么,每次我都在测试我的代码。 . .结果是:
TypeError: 'list' object is not callable
我已经尝试了所有方法,即使我将变量更改为 string 。 . .说的一样,只是更改字符串
的列表
变化:
for ips in ipfile:
...
没有括号
我正在尝试读取一个包含 300 台计算机的 ips 的文件,然后写入一个新文件(如果存在或不存在)。
import os
import datetime
import platform
import subprocess
date = datetime.datetime.now()
day = date.day
hour = date.hour
os.chdir ('Path')
openips = open ("ips.txt","r")
ipfile = openips.readlines()
print (ipfile)
for ips in ipfile():
ips = ips.strip()
print (ips)
args = ["ping", "-n", "4", "-l", "1", "-w", "1000", ips]
pping = subprocess.Popen(args, stdout = subprocess.PIPE, stderr = subprocess.PIPE)
for line in pping.stdout:
print (line)
os.chdir ('Path')
presult = open ("pingresults_{}_{}.txt".format(day,hour), 'a')
presult.write ('{}_{}\n'.format(ips, line))
presult.close ()
不知道为什么,每次我都在测试我的代码。 . .结果是:
TypeError: 'list' object is not callable
我已经尝试了所有方法,即使我将变量更改为 string 。 . .说的一样,只是更改字符串
的列表变化:
for ips in ipfile:
...
没有括号