如何在Python中利用paramiko远程连接服务器
短信预约 -IT技能 免费直播动态提醒
本篇文章为大家展示了如何在Python中利用paramiko远程连接服务器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
Python主要用来做什么
Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;5、游戏开发;6、桌面应用开发。
1. 先安装paramiko库
pip3 install paramiko
2. 代码
#!/usr/bin/env python# coding=utf-8"""# :author: Terry Li# :url: https://blog.csdn.net/qq_42183962# :copyright: © 2020-present Terry Li# :motto: I believe that the God rewards the diligent."""import paramikoclass cfg:host = "192.168.2.2"user = "root"password = "123456"class sshChannel:def __init__(self, cfg_obj, timeout_s=5, port=22):self._cfg = cfg_objself.ssh_connect_timeout = timeout_sself.port = portself.ssh = self.connect_server()def connect_server(self):ssh_cli = paramiko.SSHClient()key = paramiko.AutoAddPolicy()ssh_cli.set_missing_host_key_policy(key)try:ssh_cli.connect(self._cfg.host, port=self.port, username=self._cfg.user, password=self._cfg.password,timeout=self.ssh_connect_timeout)except paramiko.ssh_exception.SSHException:print("连接{}失败, 请检查配置或重试".format(self._cfg.host))ssh_cli.close()return ssh_clidef execute_cmd(self, cmd):""":param cmd: 单个命令:return: 服务器的输出信息"""stdin, stdout, stderr = self.ssh.exec_command(cmd)self.ssh.close()return stdout.read().decode('utf-8')def execute_cmd_list(self, cmd_list):""":param cmd: 命令列表:return: 服务器的输出信息的列表"""out_list = list(map(self.execute_cmd, cmd_list))return out_listdef test_get_sys_version(self):sys_version = self.execute_cmd("lsb_release -rd")print(sys_version)def test_get_sys_disk_free_and_memory_free(self):sys_info = self.execute_cmd_list(["df -h -BG /", "free -m"])print(sys_info)if __name__ == '__main__':server = sshChannel(cfg)server.test_get_sys_version()server.test_get_sys_disk_free_and_memory_free()
上述内容就是如何在Python中利用paramiko远程连接服务器,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341