1.SCPClient库实现scp协议的远程文件拷贝,注意:不是FTP 也不是SFTP。
2.为什么要做scp, 因为scp使用ssh 对资源有限的嵌入式linux 比较常用
3.scp文件拷贝使用paramiko 和 SCPClient库开发
一.scp模块的安装
pip install scp
pip install paramiko
pip接口详细说明可以看:【python】之pip,Python 包管理工具详解!_python包管理工具pip_==PP的博客-CSDN博客
二.scp库基本使用
为了更简单快捷的理解,直接上代码:
import paramiko # 用于调用scp命令
from scp import SCPClient
###实例化SSH
ssh=paramiko.SSHClient()
ssh.load_system_host_keys()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
###hostname为主机IP,port为端口号,password为密码
ssh.connect(hostname='192.1.1.1', port=22, username='root', password='root', compress=True)###建链
###scp建立连接
scpclient = SCPClient(ssh.get_transport(),socket_timeout=15.0)
local_path = 'boot.bin' ###local_path为本地文件路径
remote_path = '/home/' ###remote_path为远程文件路径
###文件传输做一个判断
try:
scpclient.put(local_path, remote_path) ###
except FileNotFoundError as e:
print(e)
print("系统找不到指定文件" + local_path)
else:
print("文件上传成功")
这样很简单的paramiko+scpclient SCP远程文件拷贝应用就完成啦。
paramiko库操作Linux完成远程控制以及SFTP文件传输,我的另一篇文章也可以看一下:【python】之paramiko库操作Linux完成远程控制以及SFTP文件传输_python 远程传输文件_==PP的博客-CSDN博客
@Neng