此代码用于使用每个主机找到活着的主机。但是我面临一些问题。我的代码:
#!/usr/bin/python
import os
global lis
lis = []
global cnt
cnt = 0
print("Scanning the Subnet : ")
subnet_input = input("->> ")
subnet_input = subnet_input.split(".")
for x in range(98,105):
subnet_input[3] = x
str(subnet_input)
new_sub = str(subnet_input[0])+'.'+str(subnet_input[1])+'.'+str(subnet_input[2])+'.'+str(subnet_input[3])
res = os.system("ping -c 4 {}".format(new_sub))
if res==0:
cnt = cnt+1
print("[*] {} is Alive".format(new_sub))
str(new_sub)
lis.append(new_sub)
print('--------------------------------------')
print("[*] ALL ALIVE HOSTS ARE {}".format(cnt))
print('--------------------------------------')
print(lis)
我收到以下错误:
Traceback (most recent call last):
File "Ping.py", line 8, in <module>
subnet_input = input("->> ")
File "<string>", line 1
192.168.1.0
^
使用python 2
,用户发送到input()
的内容通过eval()
,因此错误。
您可以改用raw_input()
,也可以切换到python 3
。