from netmiko import ConnectHandler
r1 = {'ip': '10.1.1.1', 'device_type': 'juniper', 'username': 'test', 'password': 'test1'}
r2 = {'ip': '10.1.1.2', 'device_type': 'juniper', 'username': 'test', 'password': 'test1'}
def connect(**cred):
ssh_conn = ConnectHandler(**cred)
connect(r1)
这是我一直在玩的一些基本功能,但我似乎在基础上苦苦挣扎。我正在使用Netmiko,我希望能够列出设备并创建一个功能,以便我可以将其导入其他脚本。
我想创建一个连接到设备的功能,但它会连接到我在功能中提到的任何设备,但这似乎没有用 - 我哪里出错了?
提前致谢
答案 0 :(得分:0)
你应该尝试这样做:
docker run -it -p 8888:8888 -p 6006:6006 -v /sharedfolder:/root/sharedfolder floydhub/dl-docker:cpu bash
如果你说ConnectHandler类需要(* args,** kwargs)那么你的函数应该是这样的:
from netmiko import ConnectHandler
r1 = {'ip': '10.1.1.1', 'device_type': 'juniper', 'username': 'test', 'password': 'test1'}
r2 = {'ip': '10.1.1.2', 'device_type': 'juniper', 'username': 'test', 'password': 'test1'}
如果您想要添加 def connect(*args, **cred):
ssh_conn = ConnectHandler(*args, **cred)
connect(**r1)
,则可选择添加
*args
。
问题是你使用**cred
作为kwargs
签名,但是你没有将关键字args传递给函数,而是传递位置参数。