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

一、SFTP基础命令格式

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

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

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

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. 网络连通性检查

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

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

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

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

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

    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参数

调试建议:

sftp -v -P 30033 test_jigou_sftp@121.199.64.216

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

### 如何快速上传文件至AutoDL服务器 对于希望高效利用时间并减少等待的用户来说,掌握快速上传文件到AutoDL服务器的方法至关重要。通过XFTP或SCP协议可以直接实现这一目标。 #### 使用XFTP进行批量传输 当面对大量文件或是整个目录结构时,推荐使用XFTP工具完成向`/autodl-tmp`路径下的数据盘传送操作[^3]。启动XFTP客户端后建立与远程主机之间的SFTP会话,在本地计算机和云端实例间构建图形化界面支持下的双向通道。只需简单地选中所需转移的对象并通过鼠标拖拽动作就能轻松达成目的;此方式不仅限于单个实体,同样适用于多层级嵌套式的复杂体系架构。 #### 利用命令行执行自动化脚本 针对熟悉Linux环境以及偏好编程控制流程的技术人员而言,则可考虑编写Shell脚本来简化重复性的任务处理过程。下面给出了一段Python代码片段作为示例说明如何借助Paramiko库配合SSH密钥认证机制来进行安全高效的远端部署工作: ```python import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('your.server.ip', username='username', key_filename='/path/to/private/key') sftp = ssh.open_sftp() local_path = '/source/directory' remote_path = '/target/directory/on/AutoDL' for file_name in os.listdir(local_path): sftp.put(os.path.join(local_path, file_name), f"{remote_path}/{file_name}") sftp.close() ssh.close() ``` 上述程序能够遍历指定源位置内的所有条目并将它们逐一迁移到目的地处,期间无需人工干预从而大大提高了工作效率[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值