如何在服务器与主机之间传输文件
如何在服务器与主机之间传输文件
ftp(基础FTP协议)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 安装ftp客户端(若未安装)
sudo apt install ftp
# 连接服务器
ftp ftp.example.com 21
# 输入用户名密码(根据提示输入)
ftp> username: your_username
ftp> password: your_password
# 切换到服务器目标目录
ftp> cd /remote/path
# 上传文件(以.tar.gz为例)
ftp> put myfolder.tar.gz
ftp> get file.txt # 下载文件
ftp> mget *.txt # 批量下载匹配文件
# 退出
ftp> bye
lftp(支持断点续传,更稳定)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 安装lftp
sudo apt install lftp # Debian/Ubuntu
sudo yum install lftp # CentOS/RHEL
brew install lftp # macOS
# 连接服务器
lftp -u username,password ftp.example.com:21 # 基础格式(FTP协议)
lftp -u username sftp://example.com:22 # 使用 SFTP(基于SSH,端口22)
lftp ftp://example.com # 匿名访问(无需密码)
# 上传文件
lftp > put /local/path/myfolder.tar.gz -o /remote/path/myfolder.tar.gz
# 下载单个文件
lftp > get /remote/path/file.txt -o /local/save/path/file.txt
# 下载整个目录
lftp > mirror --verbose /remote/directory/ /local/save/path/ # --verbose: 显示详细进度
sftp(基于SSH)
1
2
3
4
5
6
7
8
9
10
11
# 使用sftp命令(需SSH权限)
sftp -P 22 username@ftp.example.com
# 上传文件
sftp> put myfolder.tar.gz /remote/path/
# 下载文件
sftp> get /remote/file.txt /local/save/path/
# 下载文件夹(需压缩后下载)
sftp> get -r /remote/folder/ /local/save/path/
使用 wget 直接下载
1
2
# 支持HTTP/FTP协议(需开放权限)
wget ftp://username:password@ftp.example.com/path/to/file.txt
使用 curl 下载
1
2
# 通过HTTP/FTP下载
curl -o local_file.txt ftp://username:password@ftp.example.com/path/file.txt
This post is licensed under CC BY 4.0 by the author.