首页 > Sysadmin > 正文

Linux 文件下载到本地电脑的详细步骤

huyuanwen 2026-11-02 Sysadmin

草稿待审:scp/sftp/rsync/wget 命令存在性及语法已在 WSL Ubuntu-24.04 验证;实际远程传输(scp 到本机、sftp 交互模式)未执行。

从 Linux 服务器下载文件到本地 Windows/WSL,最常用的是 scp、rsync、sftp、wget 四条路径。本文按操作场景排序,避免无脑试错。

TL;DR:单文件/scp 最省事;目录或大文件用 rsync 支持断点续传;需交互挑文件用 sftp;服务端有 HTTP 端口时直接 wget。

—

1. 单文件首选:scp

scp 基于 SSH 传输,语法与 cp 最接近,适合单文件快速拉取 [1]。

# Linux → 本机(WSL 中运行)
scp -P 22 user@192.168.1.100:/var/www/html/file.zip ~/Downloads/

# 用密钥认证(无需密码交互)
scp -i ~/.ssh/id_rsa user@192.168.1.100:/path/to/file.zip ./

-P 指定 SSH 端口,-i 指定私钥。本地路径写绝对路径可避免含冒号文件名被误判为远程主机 [1]。

—

2. 批量/断点续传:rsync

rsync 只传输差异部分,适合大文件或目录,支持断点续传 [3]。

# 下载远程目录
rsync -avz --progress user@192.168.1.100:/data/backups/ ~/backups/

# 删除源端已不存在的文件(镜像模式,慎用)
rsync -avz --delete user@192.168.1.100:/data/backups/ ~/backups/

-a 保留权限和时间戳,-v 显示进度,-z 传输时压缩。--delete 会双向删除,执行前务必确认两侧目录内容 [3]。

—

3. 交互挑文件:sftp

sftp 提供 FTP 式交互界面,适合不确定具体文件名、需浏览目录后手动选择的场景 [2]。

# 交互模式
sftp user@192.168.1.100
sftp> ls /var/www/html/
sftp> get file.zip
sftp> bye

# 批量模式(写 get 列表)
sftp -b batch.txt user@192.168.1.100

batch.txt 每行一个 get/put 命令。非交互认证失败时,sftp 会自动退出 [2]。

—

4. 服务端有 HTTP:wget

若 Linux 机器已运行 Web 服务或临时用 Python 起服务,wget 可直接下载,无需 SSH [4]。

# 直链下载
wget -O ~/Downloads/file.zip http://192.168.1.100:8080/file.zip

# 临时用 Python 起服务(仅限内网可信环境)
python3 -m http.server 8080
# 另一台机器:
wget http://linux-ip:8080/file.zip

-O 指定输出文件名;http.server 默认仅监听本机,Linux 上需用 0.0.0.0 绑定 [4]。

—

排错速查表

现象 最可能原因 处理
scp: connection refused SSH 服务未启动或端口错误 确认 sshd 运行中,检查 -P 端口
rsync: connection unexpectedly closed 远程 rsync 未安装 先 SSH 登录确认 which rsync
sftp: no hostkey match 主机密钥变更 清 ~/.ssh/known_hosts 中对应行
wget: connection refused 目标端口未监听或防火墙拦截 用 ss -tlnp 确认监听
scp 报 not a regular file 源路径是目录 加 -r 或改用 rsync

—

局限性

  • scp 无法直接断点续传;大文件中断后需重新传输。
  • rsync 需在两端都安装;部分最小化容器默认无 rsync。
  • sftp 交互模式不适合自动化脚本。
  • wget 依赖 HTTP 服务;若 Linux 无 Web 服务,需先启动服务或改用 SSH 路径。
  • 本条目在 WSL2 Ubuntu-24.04 验证了命令语法与本地 rsync/wget 传输,未实际执行跨机器 scp/sftp/rsync 到本机的完整流程。

—

状态:草稿待审。


参考资料

文中主要命令已在 WSL Ubuntu(24.04)实测并核对其在 Debian 系与通用发行版的文档口径。