Python使用Fabric模块对组运行SSH命令

我正在尝试使用该Fabric模块作为一组向两个树莓派运行命令。我正在尝试学习如何使用该Group方法,但是我认为我做错了某些事情,因为当我运行以下代码时:...


import fabric


b = fabric.connection.Connection("192.168.3.151", port=22, user="pi", \

    connect_kwargs={"password" : "Raspberry"})

c = fabric.connection.Connection("192.168.3.123", port=22, user="pi", \

    connect_kwargs={"password" : "Raspberry"})

pool = fabric.group.SerialGroup(b, c)

pool.run("touch /home/pi/Desktop/new_file65.txt")

pool.close()

print("hi")

我收到以下错误:


Traceback (most recent call last):

  File "/home/pi/.local/lib/python3.5/site-packages/invoke/config.py", line 98, in __getattr__

    return self._get(key)

  File "/home/pi/.local/lib/python3.5/site-packages/invoke/config.py", line 165, in _get

    value = self._config[key]

  File "/home/pi/.local/lib/python3.5/site-packages/invoke/config.py", line 154, in __getitem__

    return self._get(key)

  File "/home/pi/.local/lib/python3.5/site-packages/invoke/config.py", line 165, in _get

    value = self._config[key]

KeyError: 'rsplit'


During handling of the above exception, another exception occurred:


Traceback (most recent call last):

  File "test.py", line 7, in <module>

    pool = fabric.group.ThreadingGroup(b, c)

  File "/home/pi/.local/lib/python3.5/site-packages/fabric/group.py", line 70, in __init__

    self.extend(map(Connection, hosts))

  File "/home/pi/.local/lib/python3.5/site-packages/fabric/connection.py", line 246, in __init__

    shorthand = self.derive_shorthand(host)

  File "/home/pi/.local/lib/python3.5/site-packages/fabric/connection.py", line 416, in derive_shorthand

    user_hostport = host_string.rsplit("@", 1)

  File "/home/pi/.local/lib/python3.5/site-packages/invoke/config.py", line 110, in __getattr__

    raise AttributeError(err)

AttributeError: No attribute or config key found for 'rsplit'


Valid keys: ['connect_kwargs', 'forward_agent', 'gateway', 'load_ssh_configs', 'port', 'run', 'runners', 'ssh_config_path', 'sudo', 'tasks', 'timeouts', 'user']


我想我犯了一个简单的错误,希望对分组连接的任何指导!谢谢!


守着星空守着你
浏览 243回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python