• 技术文章 >后端开发 >Python教程

    使用paramiko交互小程序

    高洛峰高洛峰2016-11-21 10:40:55原创970
    小程序如下:

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    import paramiko
    RED_COLOR='\033[1;31;48m'  #红 ,配置终端输出的颜色
    BLUE_COLOR='\033[1;34;48m'  #蓝 ,配置终端输出的颜色
    RES='\033[0m'
    def SSH_Pkey(Host,UserName,Pkey,Port=22):
        #基于用户名密钥连接并执行命令
        try:
            private_key = paramiko.RSAKey.from_private_key_file(Pkey)
            # 创建SSH对象
            SSH = paramiko.SSHClient()
            # 允许连接不在know_hosts文件中的主机
            SSH.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            # 连接服务器
            SSH.connect(hostname=Host, port=Port, username=UserName,key_filename=Pkey)
            # 执行命令
            print ("%s成功登录到服务器%s,请输入操作命令!%s"%(RED_COLOR,Host,RES) )
            while True:
                CMD=input('%s请输入输入操作命令:%s'%(BLUE_COLOR,RES))
                if CMD=='exit':
                    print ("%s执行%s命令退出!%s" %(RED_COLOR,CMD,RES))
                    # 关闭连接
                    SSH.close()
                    break
                else:
                    stdin, stdout, stderr = SSH.exec_command(CMD)
                    print ("%s执行命令%s返回结果:%s"%(RED_COLOR,CMD,RES))
                    for i in stdout.read().splitlines():
                        print (i.decode('utf-8'))
        except :
            print ("%sSSH远程登录失败,退出程序!\n" %(RED_COLOR,RES ))
     
    if __name__ == '__main__':
        Host='59.1.1.1'
        UserName='root'
        SSH_Key=r'D:\Identity2048'
        Port = 6382
        SSH_Pkey(Host=Host,UserName=UserName,Pkey=SSH_Key,Port=Port)

    效果图如下:

    wKioL1gyVV7QAVN7AAJYYSFllUI099.jpg-wh_500x0-wm_3-wmp_4-s_1244622877.jpg

    php入门到就业线上直播课:进入学习

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    上一篇:Python input 使用 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 使用Python处理KNN分类算法• Python NumPy教程之数据类型对象• Python标准库中的logging用法示例• 浅谈Python的Django框架中的缓存控制• python发腾讯微博代码分享
    1/1

    PHP中文网