命令行快速上传文件到SFTP服务器(附参考示例)

一、SFTP基础命令格式

更新参数后的标准命令格式为:

bash 复制代码
sftp -P [端口号] [用户名]@[服务器IP]:[远程路径] <<< $'put [本地文件路径]'
二、新参数实例解析

使用新连接参数的完整命令示例:

bash 复制代码
sftp -P 30033 test_jigou_sftp@121.199.64.216:/download/ <<< $'put /usr/local/src/alipay-notification-extension/output/S_WTXNSQCGSYXGS_DZZD_20250511.txt'
  1. 连接参数解析

    • -P 30033:指定非标准SFTP端口(默认22)
    • test_jigou_sftp:机构级SFTP账户
    • 121.199.64.216:新版服务器IP地址
    • :/download/:远程服务器的文件接收目录
  2. 操作指令说明

    • <<<:通过字符串直接传递操作指令
    • put命令后的路径为本地文件绝对路径
三、操作流程验证
  1. 网络连通性检查

    bash 复制代码
    telnet 121.199.64.216 30033
    # 出现"Connected to 121.199.64.216"表示端口可达
  2. 执行上传操作

    bash 复制代码
    sftp -P 30033 test_jigou_sftp@121.199.64.216:/upload/ <<< $'put /data/files/report.csv'
  3. 结果验证方法

    • 连接时输入正确密码
    • 观察终端返回的传输进度提示
    • 通过sftp> ls查看远程目录文件列表
四、进阶配置示例
  1. 公钥认证配置

    bash 复制代码
    ssh-copy-id -p 30033 -i ~/.ssh/id_rsa.pub test_jigou_sftp@121.199.64.216
  2. 多文件传输脚本

    bash 复制代码
    sftp -P 30033 test_jigou_sftp@121.199.64.216 <<EOF
    cd /download
    put /local/file1.pdf
    put /local/file2.xlsx
    exit
    EOF
  3. 下载文件操作

    bash 复制代码
    sftp -P 30033 test_jigou_sftp@121.199.64.216:/backup/ <<< $'get 2024_data.zip'
五、故障排查指南
典型问题 解决方案
Connection timeout 检查IP白名单、安全组30033端口放行
Authentication rejected 确认用户名后缀_sftp是否完整
File transfer stuck 检查文件是否被其他进程占用
Protocol version mismatch 添加-oHostKeyAlgorithms=+ssh-dss参数

调试建议:

bash 复制代码
sftp -v -P 30033 test_jigou_sftp@121.199.64.216

通过适配新参数后的操作方案,可无缝对接最新SFTP服务器环境,特别适合金融报文传输、机构数据交换等安全传输场景。建议将常用命令保存为脚本文件提升操作效率。

相关推荐
Jason_chen38 分钟前
Linux 6.2 音频机制深度解析:AI驱动的低延迟音频与零信任音频安全架构
linux
下午写HelloWorld42 分钟前
Linux系统及Ubuntu常用指令
linux·ubuntu·操作系统
lizhihai_992 小时前
股市学习心得-AI 产业链核心标的梳理清单
大数据·服务器·人工智能·科技·学习
云计算磊哥@2 小时前
运维开发宝典026-MySQL02数据库表操作
运维·数据库·运维开发
weixin_523185322 小时前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
黄同学real2 小时前
解决 Visual Studio Web Deploy 远程发布报 401 未授权 (ERROR\_USER\_UNAUTHORIZED)
服务器
天天进步20153 小时前
Tunnelto 源码解析 #9:控制服务器设计:Warp、WebSocket、Ping/Pong 与连接保活
运维·服务器·websocket
凡人叶枫3 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
云栖梦泽3 小时前
玩转RK3506SDK
linux·嵌入式硬件
极客先躯3 小时前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷