温馨提示×

怎么用linux sftp下载

小樊
39
2026-08-27 02:47:54
栏目: 智能运维

在 Linux 下使用 SFTP(SSH File Transfer Protocol) 下载文件,常见有以下几种方式:


一、使用 sftp 命令行(最常用)

1️⃣ 连接服务器

sftp username@server_ip

示例:

sftp root@192.168.1.100

如果是非 22 端口:

sftp -P 2222 username@server_ip

2️⃣ 下载单个文件

get remote_file

示例:

get test.txt

下载到指定本地目录:

get test.txt /home/user/downloads/

3️⃣ 下载整个目录(递归)

get -r remote_dir

示例:

get -r /var/log/nginx

4️⃣ 常用 sftp 命令

命令 说明
ls 查看远程目录
lls 查看本地目录
cd 切换远程目录
lcd 切换本地目录
pwd 远程当前目录
lpwd 本地当前目录
put 上传文件
get 下载文件
exit / bye 退出

二、使用 scp(更简单,推荐)

如果只是下载文件,不交互,scp 更方便。

下载单个文件

scp username@server_ip:/remote/path/file.txt /local/path/

下载整个目录

scp -r username@server_ip:/remote/path/dir /local/path/

指定端口:

scp -P 2222 -r username@server_ip:/remote/path /local/path

三、使用 rsync(大量文件推荐)

rsync -avz -e "ssh -p 22" username@server_ip:/remote/path /local/path

优点:

  • 支持断点续传
  • 只同步变化文件
  • 速度快

四、使用私钥登录(免密)

sftp -i ~/.ssh/id_rsa username@server_ip

或:

scp -i ~/.ssh/id_rsa username@server_ip:/remote/file /local/

五、常见问题

❌ 连接慢 / 卡住

  • 检查网络
  • 使用 -o ConnectTimeout=10

❌ 权限不足

  • 确保对远程文件有读权限
  • 本地目录有写权限

六、总结推荐

场景 推荐
临时下载 sftp
简单下载 scp
大量/同步 rsync

如果你愿意,可以告诉我:

  • 下载单个文件还是整个目录
  • 是否需要 免密登录
  • 是否是 跳板机 / 多跳

我可以给你一条直接可用的命令

0