Windows 库存使用 python
Windows inventory using python
我正在尝试使用以下函数为 windows 组服务器创建清单报告。但是,这个函数总是无法对所有主机进行 ping 测试,尽管我很乐意从命令行干净地 ping 其中一些主机。
尝试了多种组合,无法弄清楚是什么限制了它击中 ping pass 块?
请建议,
def StartInvetoryCollection() :
for eachline in open('HostList.txt', 'r') :
RemoteHost = eachline.strip()
print(RemoteHost, end='')
if os.system('ping RemoteHost -c 4') == 0 :
print('\t\tPING=PASS',end='')
ReportFileName = RemoteHost + '_msinfo.txt'
os.system('msinfo32 /computer Host /report ReportFileName')
print('\tData Collection=PASS')
else :
print('\t\tPING=FAIL\tData Collection=SKIP')
pass
Hostlist.txt - 每行包含一个主机名
您必须将您的值传递给 os.system
:
def StartInvetoryCollection() :
for eachline in open('HostList.txt', 'r') :
RemoteHost = eachline.strip()
print(RemoteHost, end='')
if os.system('ping {} -n 4'.format(RemoteHost)) == 0 :
print('\t\tPING=PASS',end='')
ReportFileName = RemoteHost + '_msinfo.txt'
os.system('msinfo32 /computer Host /report {}'.format(ReportFileName))
print('\tData Collection=PASS')
else :
print('\t\tPING=FAIL\tData Collection=SKIP')
pass
我正在尝试使用以下函数为 windows 组服务器创建清单报告。但是,这个函数总是无法对所有主机进行 ping 测试,尽管我很乐意从命令行干净地 ping 其中一些主机。 尝试了多种组合,无法弄清楚是什么限制了它击中 ping pass 块? 请建议,
def StartInvetoryCollection() :
for eachline in open('HostList.txt', 'r') :
RemoteHost = eachline.strip()
print(RemoteHost, end='')
if os.system('ping RemoteHost -c 4') == 0 :
print('\t\tPING=PASS',end='')
ReportFileName = RemoteHost + '_msinfo.txt'
os.system('msinfo32 /computer Host /report ReportFileName')
print('\tData Collection=PASS')
else :
print('\t\tPING=FAIL\tData Collection=SKIP')
pass
Hostlist.txt - 每行包含一个主机名
您必须将您的值传递给 os.system
:
def StartInvetoryCollection() :
for eachline in open('HostList.txt', 'r') :
RemoteHost = eachline.strip()
print(RemoteHost, end='')
if os.system('ping {} -n 4'.format(RemoteHost)) == 0 :
print('\t\tPING=PASS',end='')
ReportFileName = RemoteHost + '_msinfo.txt'
os.system('msinfo32 /computer Host /report {}'.format(ReportFileName))
print('\tData Collection=PASS')
else :
print('\t\tPING=FAIL\tData Collection=SKIP')
pass