使用Netmiko创建函数



我有一个使用netmiko的函数脚本,我想为send_command创建一个函数,但我真的不知道该怎么做。

def estb_conn(ip,uname,pname,instruct):
cisco_ios = {
'device_type': 'cisco_ios',
'ip': ip,
'username': uname,
'password': pname,
}
ios_connect = netmiko.ConnectHandler(**cisco_ios)
display = ios_connect.find_prompt()

****我想把这个send_command作为一个新函数,这样我就可以自由地当我需要多个命令或循环***时,可以在任何地方调用它

command = ios_connect.send_command(instruct)
time.sleep(1)

是的,您可以在Python中创建新函数。您甚至可以做您想做的事情(这被称为部分应用程序和闭包(。

def netmiko_partial_from_stackoverflow (ip, uname, pname):
cisco_ios = {
'device_type': 'cisco_ios',
'ip': ip,
'username': uname,
'password': pname,
}
ios_connect = netmiko.ConnectHandler(**cisco_ios)
display = ios_connect.find_prompt()
def inner_function_from_stackoverflow(instruct):
res = ios_connect.send_command(instruct)
time.sleep(1)
return res

之后你可以这样使用它:

mycommand_from_stackoverflow = netmiko_partial_from_stackoverflow(someip, someuname, somepnmae)
mycommand_from_stackoverflow('show running-config')
mycommand_from_stackoverflow('show inferfaces')

最新更新