linux下ftp命令使用教程
linux下ftp命令使用教程详细介绍
在 Linux 中,ftp 命令是用于访问和操作 FTP(文件传输协议)服务器的常用工具。以下是详细的使用教程,涵盖连接、登录、文件操作等核心功能:
一、基本语法与连接服务器
bash
options hostname
hostname:FTP 服务器的域名或 IP 地址。- 示例:连接到名为
ftp.example.com的服务器:bashftp.example.com
二、登录方式
1.
交互式登录(需要用户名和密码)
连接后,根据提示输入用户名和密码:
bash
ftp user usernamePlease specify the password.
ftp pass password
Login successful.
2.
匿名登录(公共服务器)
若服务器支持匿名访问,用户名输入 anonymous,密码通常留空或使用邮箱地址:
bash
ftp user anonymousPlease specify the password.
ftp pass your_email@example.com
Login successful.
3.
命令行直接登录(非交互)
bash
username password ftp.example.com
三、常用 FTP 命令
1. 连接与断开
| 命令 | 说明 |
|---|---|
open host |
连接到指定 FTP 服务器 |
close |
断开当前连接,但保持 FTP 会话 |
bye/quit |
断开连接并退出 FTP 程序 |
2. 本地文件操作(当前终端所在目录)
| 命令 | 说明 |
|---|---|
! |
临时切换到本地 shell(输入 exit 返回 FTP) |
lcd [目录] |
更改本地工作目录 |
lpwd |
显示本地当前目录 |
lls [文件] |
列出本地文件(支持通配符) |
3. 服务器文件操作
| 命令 | 说明 |
|---|---|
dir [远程目录] |
列出远程目录内容 |
ls [远程目录] |
简化版 dir,仅显示文件名 |
cd [远程目录] |
切换远程工作目录 |
pwd |
显示远程当前目录 |
mkdir [目录名] |
创建远程目录 |
rmdir [目录名] |
删除远程空目录 |
delete [文件名] |
删除远程文件 |
rename [旧名] [新名] |
重命名远程文件 / 目录 |
4. 文件传输
| 命令 | 说明 |
|---|---|
get [远程文件] [本地名] |
下载文件(可选本地保存名) |
mget [通配符] |
下载多个文件(支持 */?) |
put [本地文件] [远程名] |
上传文件(可选远程保存名) |
mput [通配符] |
上传多个文件(支持通配符) |
5. 传输模式
- 二进制模式(推荐传图片、压缩包等):bash
ftp binarySwitching to Binary mode.
- 文本模式(传纯文本文件):bash
ftp asciiSwitching to ASCII mode.
6. 其他实用命令
| 命令 | 说明 |
|---|---|
help [命令] |
查看指定命令的帮助信息 |
prompt |
切换批量操作时的交互提示(默认开启,关闭后 mget/mput 不逐行确认) |
status |
显示当前 FTP 会话状态 |
四、示例:完整操作流程
- 连接服务器:
bash$ ftp.example.comConnected to ftp.example.com.
vsFTPd .3
Name ftp.example.com:your_username: ftp_user
Please specify the password.
Password: **********
Login successful.
Remote system is UNIX.
Using binary mode to transfer files.
ftp
- 查看远程文件:
bashftpPORT successful. Consider using PASV.
Here comes the directory listing.
-rw-r--r-- Jan 01 00:00 example.txt
drwxr-xr-x Jan 01 00:00 images
Directory send OK.
- 下载文件(二进制模式):
bashftp binaryftp get example.txt
local: example.txt remote: example.txt
PORT successful. Consider using PASV.
Opening BINARY mode data connection example.txt bytes.
Transfer complete.
bytes received secs MB/s
- 上传文件:
bashftp put local_file.txt remote_file.txtlocal: local_file.txt remote: remote_file.txt
PORT successful. Consider using PASV.
Opening BINARY mode data connection remote_file.txt.
Transfer complete.
bytes sent secs kB/s
- 断开连接并退出:
bashftp byeGoodbye.
五、注意事项
- 被动模式(PASV):
若主动模式传输失败(如防火墙限制),可切换为被动模式:
bashftp pasvEntering Passive Mode ,1,1,123,45.
- 安全建议:
- 避免在命令行直接输入密码(可能被日志记录),优先使用交互式登录。
- 对敏感传输,建议使用更安全的
sftp(基于 SSH)或ftps(FTP over SSL/TLS)。
- 通配符匹配:
使用mget *.txt下载所有.txt文件前,建议先关闭prompt(ftp> prompt off)以跳过逐行确认。
通过以上命令,你可以在 Linux 下高效地完成 FTP 服务器的文件传输与管理操作。如果遇到问题,可通过 man ftp 查看完整手册。