python使用Paramiko模块实现远程文件拷贝
paramiko是用python写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。利用该模块,可以方便的进行ssh连接和sftp协议进行sftp文件传输以及远程命令执行。
通过安装包安装:
wgethttp://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.tar.gz wgethttp://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz tar-zxvfpycrypto-2.6.tar.gz cdpycrypto-2.6/ pythonsetup.pybuild&&pythonsetup.pyinstall wgethttp://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gz tarxvzfparamiko-1.7.7.1.tar.gz cdparamiko-1.7.7.1/ pythonsetup.pybuild&&pythonsetup.pyinstall
yum安装,简单省事:
yuminstallpython-paramiko-y
简单使用:从远程服务器拷贝文件:
#coding=utf-8
importparamiko,os
defremote_scp(type,host_ip,remote_path,local_path,username,password):
ssh_port=22
try:
conn=paramiko.Transport((host_ip,ssh_port))
conn.connect(username=username,password=password)
sftp=paramiko.SFTPClient.from_transport(conn)
iftype=='remoteRead':
ifnotlocal_path:
fileName=os.path.split(remote_path)
local_path=os.path.join('/tmp',fileName[1])
sftp.get(remote_path,local_path)
iftype=="remoteWrite":
sftp.put(local_path,remote_path)
conn.close()
returnTrue
exceptException:
returnFalse
通过传递操作类型,主机ip,远程路径和本地路径,用户名密码即可实现文件的远程拷贝。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。