FTP在win命令行操作
显示当前 FTP 连接状态(含传输模式、bell/hash/prompt 启用状态、服务器地址、本地 / 远程工作目录等)批量列出远程文件名称(仅显示文件名,简洁版 mdir,如 mls *.txt list.txt 保存文件名到本地)启用 / 禁用批量操作确认提示(默认启用:批量上传 / 下载逐个确认;批量从远程下载文件(支持通配符,如 mget *.jpg 下载所有 jpg,需 prompt
一、指令
!
临时退出 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.00秒 9.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.00秒 9000.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.00秒 8000.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.03秒 29.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.00秒 33.50千字节/秒。
ftp> get a.txt
200 PORT command successful.
125 Data connection already open; Transfer starting.
226 Transfer complete.
ftp: 收到 12828 字节,用时 0.03秒 388.73千字节/秒。

三、问题和思考
1、上传本地不存在的文件,会报错吗?
put b.txt
b.txt: 找不到文件
会的
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)