要输入的命令cmd是:interfacerangeGigabitEthernet1/0/1-48noipaccess-groupLIMITED_ACCESSinnoauthenticationopeninterfacerangeGigabitEthernet2/0/1-48noipaccess-groupLIMITED_A...
要输入的命令cmd是:
interface range GigabitEthernet1/0/1 -48
no ip access-group LIMITED_ACCESS in
no authentication open
interface range GigabitEthernet2/0/1 -48
no ip access-group LIMITED_ACCESS in
no authentication open
interface range GigabitEthernet3/0/1 -48
no ip access-group LIMITED_ACCESS in
no authentication open
每条命令执行会卡顿20S。。。。
主程序
#定义连接与操作
def ssh2(ip,username,passwd,cmd):
try:
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(ip,22,username,passwd,timeout=5)
ssh_shell = ssh.invoke_shell()
for m in cmd:
res = ssh_shell.sendall(m)
time.sleep(20)
print(ssh_shell.recv(1024))
ssh.close()
except :
print('%s\tError\n'%(ip))
for ip in ips:
t = threading.Thread(target=ssh2,args=(ip,username,passwd,cmd))
t.start()
ips列表里有大概800个ip
1、命令cmd里3个是一组,一组必须是连续执行。疑问,threading适用吗?
2、怎么优化能叫执行的时间缩短?
展开