一、指令

!

临时退出 FTP 环境,切换到本地 Windows 命令行;执行完本地命令后输入 exit 可返回 FTP

delete

删除远程服务器上的单个文件(如 delete test.txt 删除远程的 test.txt)

literal

向 FTP 服务器发送原始协议指令(高级用法,如 literal SYST 查看服务器系统类型)

prompt

启用 / 禁用批量操作确认提示(默认启用:批量上传 / 下载逐个确认;prompt off 禁用后直接批量操作)

send

同 put,将本地单个文件上传到远程(功能完全一致,兼容写法)

?

显示 FTP 命令帮助(同 help,直接输入 ? 列出所有命令,? 命令名 查看单个命令详情)

debug

启用 / 禁用调试模式(启用后显示 FTP 与服务器的详细交互日志,用于排查连接 / 传输问题)

ls

列出远程当前目录的文件 / 子目录(仅显示名称,简洁版 dir,不显示详细信息)

put

将本地单个文件上传到远程当前目录(如 put local.txt 上传本地文件到远程)

status

显示当前 FTP 连接状态(含传输模式、bell/hash/prompt 启用状态、服务器地址、本地 / 远程工作目录等)

append

将本地文件追加到远程服务器的现有文件中(远程文件不存在则创建,区别于 put 覆盖 / 新建

dir

列出远程当前目录的文件 / 子目录(含详细信息:权限、大小、修改时间,类似 Windows 本地 dir)

mdelete

批量删除远程文件(支持通配符,如 mdelete *.log 删除所有远程 log 文件)

pwd

显示当前远程服务器的工作目录(如返回 /home/user,明确当前在远程的位置)

trace

启用 / 禁用数据包跟踪(显示 FTP 传输的网络路径,用于排查网络连通性问题)

ascii

切换到 ASCII 文件传输模式(适用于文本文件,自动转换 Windows/Linux 换行符)

disconnect

同 close,断开 FTP 连接但不退出客户端(兼容写法)

mdir

批量列出远程目录内容(支持通配符,如 mdir /doc/. local.txt 将远程文件列表保存到本地)

quit

断开 FTP 连接并退出 FTP 客户端(同 bye,标准退出指令)

type

显示或设置文件传输模式(如 type ascii 切换到 ASCII 模式,直接输入 type 查看当前模式)

bell

启用 / 禁用传输完成后的提示音(默认禁用,执行后文件传输结束会发出 “叮” 声)

get

从远程服务器下载单个文件到本地当前目录(如 get remote.txt 下载远程文件到本地)

mget

批量从远程下载文件(支持通配符,如 mget *.jpg 下载所有 jpg,需 prompt 控制确认)

quote

同 literal,向 FTP 服务器发送原始协议指令(兼容写法,如 quote PASV 启用被动模式)

user

向 FTP 服务器重新指定用户名(连接后切换用户或首次连接时输入,如 user newuser)

binary

切换到二进制文件传输模式(适用于压缩包、图片、程序等非文本文件,保持原始字节不修改)

glob

启用 / 禁用文件名通配符(*/?)匹配(默认启用,支持批量操作如 mget *.txt)

mkdir

在远程服务器上创建新目录(如 mkdir newfolder 远程当前目录创建 newfolder)

recv

同 get,从远程下载单个文件到本地(功能完全一致,兼容不同 FTP 客户端写法)

verbose

启用 / 禁用详细模式(启用后显示传输详情:文件大小、传输字节数;禁用后仅显示简要信息)

bye

断开 FTP 连接并退出 FTP 客户端(同 quit,快捷退出指令)

hash

启用 / 禁用传输进度标记(启用后每传输 1024 字节显示一个 #,直观查看传输进度)

mls

批量列出远程文件名称(仅显示文件名,简洁版 mdir,如 mls *.txt list.txt 保存文件名到本地)

remotehelp

查看远程服务器支持的 FTP 命令(获取服务器端可用指令列表,区别于本地 help)

cd

切换远程服务器的工作目录(如 cd /data 切换到远程 /data 目录)

help

显示所有 FTP 命令的详细帮助(同 ?,如 help mput 查看批量上传命令用法)

mput

批量将本地文件上传到远程(支持通配符,如 mput *.docx 上传所有 docx,需 prompt 控制)

rename

重命名远程的文件 / 目录(如 rename old.txt new.txt 远程文件重命名)

close

断开与远程 FTP 服务器的连接,但不退出FTP 客户端(可后续用 open 重新连接)

lcd

切换本地 Windows的工作目录(如 lcd D:\Downloads 设本地下载目录,后续下载默认存于此)

open

连接到指定 FTP 服务器(如 open ftp.example.com 21 连接服务器的 21 端口)

rmdir

删除远程服务器上的空目录(需先删除目录内所有文件,如 rmdir oldfolder)

二、实操

1、登录ftp

PS C:\Users\xxh> ftp 192.168.20.120
连接到 192.168.20.120。
220-Microsoft FTP Service
220 NJJ的FTP服务器
200 OPTS UTF8 command successful - UTF8 encoding now ON.
用户(192.168.20.120:(none)): ftpuser
331 Password required
密码:

230-欢迎接入NJJ的FTP服务器,请不要上传病毒文件,违者必追
230 User logged in.
ftp>

2、列出远程当前目录的文件 / 子目录

ftp> ls
200 PORT command successful.
125 Data connection already open; Transfer starting.
xuxh
226 Transfer complete.
ftp: 收到 9 字节,用时 0.009.00千字节/秒。
ftp>

在这里插入图片描述

3、打开文件夹,再查询

ftp> cd xuxh
250 CWD command successful.
ftp> ls
200 PORT command successful.
125 Data connection already open; Transfer starting.
226 Transfer complete.
ftp>

4、退出当前文件夹,再查询

ftp> cd ../
250 CWD command successful.
ftp> ls
200 PORT command successful.
125 Data connection already open; Transfer starting.
xuxh
226 Transfer complete.
ftp: 收到 9 字节,用时 0.009000.00千字节/秒。

5、创建文件夹

ftp> mkdir njj
257 "njj" directory created.
ftp> ls
200 PORT command successful.
125 Data connection already open; Transfer starting.
njj
226 Transfer complete.
ftp: 收到 8 字节,用时 0.008000.00千字节/秒。

在这里插入图片描述

6、上传文件

put C:\Users\xxh\Downloads\2025-11-12-172740318262_public_eth17_tcpdump.pcap\2025-11-12-172740318262_public_eth17_tcpdump.pcap
200 PORT command successful.
125 Data connection already open; Transfer starting.
226 Transfer complete.
ftp: 发送 836 字节,用时 0.0329.86千字节/秒。

在这里插入图片描述

7、查看当前文件位置

ftp> pwd
257 "/ftpuser" is current directory.

8、查看模式

ftp> type
使用 ascii 模式传送文件。

9、下载文件到本地指定文件夹

# 查看模式
ftp> type
使用 ascii 模式传送文件。

# 查看本地文件夹路径
ftp> lcd
目前的本地目录 C:\Users\xxh_0

# 切换本地文件夹到下载文件夹里面
ftp> lcd C:\Users\xxh_0\Downloads
目前的本地目录 C:\Users\xxh_0\Downloads

# 查看文件
ftp> ls
200 PORT command successful.
125 Data connection already open; Transfer starting.
2025-11-12-172740318262_public_eth17_tcpdump.pcap
a.txt
xuxh
226 Transfer complete.
ftp: 收到 67 字节,用时 0.0033.50千字节/秒。

ftp> get a.txt
200 PORT command successful.
125 Data connection already open; Transfer starting.
226 Transfer complete.
ftp: 收到 12828 字节,用时 0.03388.73千字节/秒。

在这里插入图片描述

三、问题和思考

1、上传本地不存在的文件,会报错吗?

 put b.txt
b.txt: 找不到文件

会的

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐