首页 > 系统相关 >python 运程连接 linux

python 运程连接 linux

时间:2022-12-21 09:58:33浏览次数:40  
标签:__ python times try connect linux 运程 paramiko ssh

python 实现远程连接,操作linux

1. 安装依赖

pip3 install paramiko

2. 实现原理

# -*- coding: utf-8 -*-
import paramiko


def connect(cmd, try_times=3):
    while True:
        try:
            # 建立一个sshclient对象
            ssh = paramiko.SSHClient()
            # 允许将信任的主机自动加入到host_allow 列表,此方法必须放在connect方法的前面
            ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            # 调用connect方法连接服务器
            ssh.connect(hostname='xxx', port=xx, username='xxx', password='xxxx')
            # 执行命令
            stdin, stdout, stderr = ssh.exec_command(cmd)
            # 结果放到stdout中,如果有错误将放到stderr中
            print(stdout.read().decode())
            # 关闭连接
            ssh.close()
            return
        except Exception:
            # 由于异常较多, 这里直接捕获重试
            if try_times != 0:
                try_times -= 1
                print(try_times)
            else:
                exit(1)


if __name__ == '__main__':
    connect("ls -l")

标签:__,python,times,try,connect,linux,运程,paramiko,ssh
From: https://www.cnblogs.com/test-works/p/16995572.html

相关文章

  • 同时安装一个Python包的两个版本
     有的包在升级后函数和API就完全变了,甚至删除了一切原来的功能函数,这导致后面分析数据非常的畸形。但没办法,接下了这样的项目,含着泪也得做出点东西出来,于是我就想同时把......
  • Python unittest+ddt+openpyxl+configparser
    1.技术介绍框架:unittest请求处理:requestsexcel数据处理:openpyxl参数化:ddt配置解析器:configparser报告模板:HTMLTestRunnerNew.py(下载地址:https://pan.baidu.com/s/1......
  • Linux xattr shell command All In One
    LinuxxattrshellcommandAllInOnemacOS$manxattr>xattr.mdmanxattrXATTR(1)GeneralCommandsManualXAT......
  • Linux Shell开发功能点
    背景需要操作一批次服务器安装Docker功能特色一键执行bash<(curl-s-Lhttp://server.com/installDocker.sh)MemberNode参数传递hostname修改if[!-n"$1"......
  • Python 配置参数解析器configparse
    1.configparse介绍configparser是python自带的配置参数解析器。可以用于解析.config文件中的配置参数。ini文件中由sections(节点)-key-value组成2.安装:pipinstallc......
  • Python Type Hint中Optional[str]=None和str=None的区别
    PythonTypeHint中Optional[str]=None和str=None的区别1问题来源在读到FluentPython,2edEdition,P260时产生了一些疑问:在Python中使用typehint时,以下两个声明有......
  • Linux软件安装包中devel与非devel包之间的区别
    带devel(develop)的包,俗称开发包。功能上与普通包相同,但体积更大使用rpm-qi看看这两类包的区别:#rpm-qiglibc-devel-2.12-1.149.el6.x86_64Name:glibc-devel......
  • #yyds干货盘点#Linux使用最频繁的命令:ls 命令
    ls命令介绍ls命令是英文list的简写形式。我们用它来列出文件。它的用法就是在任何目录下直接执行ls,或者在ls后接目录路径(包括相对路径和绝对路径)。当然我们还可以使用......
  • Python爬虫-第一章-3-基础语法
    list列表#DemoDescribe:list列表#列表中可以存储任意数据结构,用[]来表示##=================示例1,索引,切片,步长,循环,查看长度==========#try:#content=['火......
  • Linux下如何安装MySQL?
    目标主机:centos8MySQL安装所有平台的MySQL下载地址为:https://dev.mysql.com/downloads/repo/yum/。挑选你需要的MySQLCommunityServer版本及对应的平台。注意:安......