python使用Paramiko模块实现远程文件拷贝

时间:2021-05-22

paramiko是用python写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。利用该模块,可以方便的进行ssh连接和sftp协议进行sftp文件传输以及远程命令执行。

通过安装包安装:

wget http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-2.6.tar.gzwget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gztar -zxvf pycrypto-2.6.tar.gzcd pycrypto-2.6/python setup.py build && python setup.py installwget http://www.lag.net/paramiko/download/paramiko-1.7.7.1.tar.gztar xvzf paramiko-1.7.7.1.tar.gzcd paramiko-1.7.7.1/python setup.py build && python setup.py install

yum安装,简单省事:

yum install python-paramiko -y

简单使用:从远程服务器拷贝文件:

#coding=utf-8import paramiko, osdef remote_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) if type == 'remoteRead': if not local_path: fileName = os.path.split(remote_path) local_path = os.path.join('/tmp', fileName[1]) sftp.get(remote_path, local_path) if type == "remoteWrite": sftp.put(local_path, remote_path) conn.close() return True except Exception: return False

通过传递操作类型,主机ip,远程路径和本地路径,用户名密码即可实现文件的远程拷贝。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章