关闭

python 远程操作ubuntu

61人阅读 评论(0) 收藏 举报
分类:

这里我们用到了paramiko库,

paramiko依赖于PyCrypto库,咱们先安装这两个库

===安装PyCrypto:===
下载PyCrypto, 地址是[[https://www.dlitz.net/software/pycrypto/|https://www.dlitz.net/software/pycrypto/]]
==安装==
解压缩,然后在dos下进入解压缩的目录,运行
  C:\python\python.exe setup.py build
  C:\python\python.exe setup.py install
==安装测试==
运行python.exe,在提示符下输入:
  import  Crypto
如果没有出现错误提示,说明Crypto安装成功
===安装paramiko===
下载paramiko,地址是[[http://www.lag.net/paramiko/|http://www.lag.net/paramiko/]]
==安装==
解压缩,在dos下进 入解压缩的目录,运行
  C:\python\python.exe setup.py build
  C:\python\python.exe setup.py install
==测试paramiko==
运行python.exe,在提示符下输入:
  import  paramiko
如果没有出现错误提示,说明paramiko安装成功


现在安装成功了来看看使用吧

import paramiko

#建立连接
ssh = paramiko.SSHClient()
#缺失host_knows时的处理方法
ssh.set_missing_host_key_policy( paramiko.AutoAddPolicy() )
#连接远程服务服务器(ip, 端口, 用户, 密码, 连接超时)
ssh.connect( ip, port, username, password, timeout=5)

我们执行一个简单的命令测试一下

cmd = 'ls'

#返回参数为输入、输出、错误

stdin, stdout, stderr = ssh.exec_command( cmd )

#如我们把输出打印出来

for out in stdout.readlines():
            if self.serverPath in out:
                self.oState.runState = RunState.run
                break

#测试完成还有最后记得关闭连接

ssh.close()


接下来介绍它的文件传输

先看示例

#连接远程服务服务器

 t=paramiko.Transport(( ip, port ))
t.connect( username=username, password=password )
#通道
sftp=paramiko.SFTPClient.from_transport(t)

#创建目录path是全路径

sftp.mkdir( path )

#上传文件path1是本地路径path2是远程路径

sftp.put( path1, path2 )

#下载文件path1是远程路径path2是本地路径

sftp.get( path1, path2 )

#最后关闭连接

t.close()

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1024次
    • 积分:71
    • 等级:
    • 排名:千里之外
    • 原创:6篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类