Linux 系统中的 FTP(File Transfer Protocol,文件传输协议)是一种广泛使用的网络协议,用于在客户端和服务器之间进行文件传输,虽然 FTP 存在安全性问题(如数据明文传输),但在某些场景下仍具有实用价值,本文将详细介绍 Linux 中常用的 FTP 命令,包括连接、文件传输、目录操作等,并辅以表格说明常用命令的用法,最后附上相关问答。

FTP 连接与登录
使用 FTP 前,需先通过命令连接到 FTP 服务器,基本语法为 ftp [服务器地址],ftp ftp.example.com,连接成功后,系统会提示输入用户名和密码,若为匿名登录,用户名通常为 anonymous,密码可为任意邮箱地址,以下是连接过程中的常用命令:
| 命令 | 功能 | 示例 |
|---|---|---|
open <主机名> |
手动连接到指定主机 | open ftp.example.com |
user <用户名> <密码> |
登录时指定用户名和密码 | user admin password |
close |
关闭当前连接,不退出 FTP 客户端 | close |
bye 或 quit |
退出 FTP 客户端 | bye |
目录操作
连接成功后,可通过命令管理服务器端的目录结构:
| 命令 | 功能 | 示例 |
|---|---|---|
ls |
列出当前目录下的文件和子目录(不显示详细信息) | ls |
dir |
列出当前目录下的文件和子目录(显示详细信息,如权限、大小、日期) | dir |
pwd |
显示当前所在的工作目录 | pwd |
cd <目录名> |
切换到指定目录 | cd pub |
cdup 或 cd .. |
返回上一级目录 | cdup |
mkdir <目录名> |
创建新目录 | mkdir new_folder |
rmdir <目录名> |
删除空目录 | rmdir empty_folder |
文件传输
文件传输是 FTP 的核心功能,分为上传(本地到服务器)和下载(服务器到本地),传输前需通过 lcd 命令设置本地目录,lcd /home/user/local_files,传输模式分为文本模式(ASCII)和二进制模式(BINARY),二进制模式适用于所有文件类型(如图片、压缩包),需通过 binary 命令切换。
| 命令 | 功能 | 示例 |
|---|---|---|
get <远程文件> [本地文件] |
下载远程文件到本地 | get file.txt |
mget <文件1> <文件2> ... |
批量下载多个文件 | mget file1.txt file2.zip |
put <本地文件> [远程文件] |
上传本地文件到服务器 | put local_file.txt |
mput <文件1> <文件2> ... |
批量上传多个文件 | mput *.txt |
ascii |
切换到文本传输模式 | ascii |
binary |
切换到二进制传输模式 | binary |
prompt |
关闭/开启交互式提示(批量传输时建议关闭) | prompt off |
文件与目录管理
在 FTP 中可对服务器端的文件和目录进行管理操作:

| 命令 | 功能 | 示例 |
|---|---|---|
delete <文件名> |
删除指定文件 | delete old_file.txt |
mdelete <文件1> <文件2> ... |
批量删除多个文件 | mdelete *.tmp |
rename <旧文件名> <新文件名> |
重命名文件或目录 | rename old.txt new.txt |
| 执行本地系统命令(需退出 FTP 交互模式) | ! ls(查看本地目录) |
其他实用命令
| 命令 | 功能 | 示例 |
|---|---|---|
status |
显示当前 FTP 连接状态 | status |
help 或 |
显示命令帮助信息 | help get |
passive 或 passive off |
切换被动/主动传输模式(防火墙环境可能需切换) | passive |
安全性与替代方案
由于 FTP 默认使用明文传输用户名和密码,数据易被窃取,建议优先使用更安全的协议,如 SFTP(基于 SSH)或 FTPS(FTP over SSL/TLS),使用 sftp username@hostname 连接 SFTP 服务器,或通过 lftp 支持 FTPS 加密传输。
相关问答 FAQs
问题 1:如何解决 FTP 连接时提示 "530 Login incorrect" 错误?
解答:该错误通常表示用户名或密码错误,需确认以下三点:① 用户名和密码是否正确区分大小写;② 是否允许匿名登录(若服务器未配置匿名登录,需使用有效账户);③ 网络是否可正常访问 FTP 服务器(可通过 ping 命令测试),若问题依旧,可尝试联系服务器管理员确认账户状态。
问题 2:FTP 传输大文件时中断,如何解决?
解答:FTP 传输中断可能由网络不稳定、被动模式未开启或服务器超时设置导致,解决方法:① 使用 binary 命令切换到二进制模式,避免文件损坏;② 输入 passive 开启被动模式,适用于 NAT 或防火墙环境;③ 使用 hash 命令开启传输进度显示,便于监控传输状态;④ 若文件过大,可考虑通过 split 命令分割文件后分批传输,或改用支持断点续传的工具(如 lftp)。
