如何通过带nc代理命令的SFTP在服务器间传输文件?
带HTTP代理的SFTP文件传输实现方案
你当前的SFTP连接命令配置逻辑正确,先确保已成功进入SFTP交互会话(若连接阶段失败,优先检查nc路径、代理地址/端口、远程服务器信息是否准确)。进入会话后,按以下方式完成单/多文件传输:
单个文件传输
本地→远程服务器
执行命令上传指定文件,可指定远程存储路径:
# 默认上传到连接时指定的/directories目录 put /本地文件完整路径/文件名 # 自定义远程存储路径及文件名 put /本地文件完整路径/文件名 /directories/目标文件名
远程服务器→本地
执行命令下载指定文件,可指定本地存储路径:
# 默认下载到当前本地工作目录 get /directories/远程文件名 # 自定义本地存储路径及文件名 get /directories/远程文件名 /本地目标路径/文件名
多个文件/目录传输
批量上传
- 用通配符匹配本地多个同类型文件:
put /本地路径/*.txt
- 递归上传整个本地目录(含子目录及文件):
put -r /本地目录完整路径
批量下载
- 用通配符匹配远程目录下的多个文件:
get /directories/*.log
- 递归下载整个远程目录:
get -r /directories
传输失败排查要点
- 验证对远程
/directories目录的读写权限,可在SFTP会话中执行ls -l /directories查看权限配置 - 确认本地文件路径正确、本地账号有文件读取权限
- 检查代理服务器是否允许22端口(SFTP)的流量通行,部分HTTP代理会限制非HTTP/HTTPS协议流量
- 大文件传输可加
-P参数显示实时进度:put -P /本地大文件路径
内容的提问来源于stack exchange,提问作者Ibrahim Basha Imran
相关产品推荐
相关产品推荐

