FTP命令与返回码说明

Ftp协议:RPC959 

  命令和返回码: 

  C-->S:命令 

  S-->C:返回码 

  每一个Ftp发送之后,Ftp服务器都会返回一个字符串,其中包括一个返回代码和一串说明信息。这个返回码主要是用于判断命令是否被成功执行了。除此之 外,还有一个非常重要的命令的返回。当发送PASV之后,返回“227 Entering Passive Mode (127,0,0,1,4,18)”。这意味着在服务器上有一个端口被开放,他将为我们后面接着的数据传输作好准备,但是我们如何知道该端口号呢,就在 (127,0,0,1,4,18)中,前面四位指服务器地址,关键是最后两位,将最后第二位乘256再加上最后一位的值就是我们的端口号,也就是 4*256+18。取得端口号之后我们就可以用socket连接到这里。这为我们后面的工作作好准备了,因为我们的取得列表,上传,下载文件都要依靠它来 实现。 

  一个非典型的ftp交互实例: 

  Response: 220 Gene6 FTP Server v3.10.0 (Build 2) ready... 

  Request: USER anonymous 

  Response: 331 Password required for anonymous. 

  Request: PASS notexist.com 

  Response: 230 User anonymous logged in. 

  Request: CWD board 

  Response: 250 CWD command successful. "/board" is current directory. 

  Request: TYPE I 

  Response: 200 Type set to I. 

  Request: SIZE 4saac062.zip 

  Response: 213 248288 

  Request: RETR 4saac062.zip 

  Response: 150 Data connection accepted from x.x.x.x:2841; transfer starting for /board/4saac062.zip (248288 bytes) 

  FTP命令: 

  灰色的命令一般很少使用,所以往往在具体实现中不被支持,所以可能返回的信息是“500 'xx': command not understood”。 

  命令 描述 

  ABOR 中断数据连接程序 

  ACCT <account> 系统特权帐号 

  ALLO <bytes> 为服务器上的文件存储器分配字节 

  APPE <filename> 添加文件到服务器同名文件 

  CDUP <dir path> 改变服务器上的父目录 

  CWD <dir path> 改变服务器上的工作目录 

  DELE <filename> 删除服务器上的指定文件 

  HELP <command> 返回指定命令信息 

  LIST <name> 如果是文件名列出文件信息,如果是目录则列出文件列表 

  MODE <mode> 传输模式(S=流模式,B=块模式,C=压缩模式) 

  MKD <directory> 在服务器上建立指定目录 

  NLST <directory> 列出指定目录内容 

  NOOP 无动作,除了来自服务器上的承认 

  PASS <password> 系统登录密码 

  PASV 请求服务器等待数据连接 

  PORT <address> IP 地址和两字节的端口 ID 

  PWD 显示当前工作目录 

  QUIT 从 FTP 服务器上退出登录 

  REIN 重新初始化登录状态连接 

  REST <offset> 由特定偏移量重启文件传递 

  RETR <filename> 从服务器上找回(复制)文件 

  RMD <directory> 在服务器上删除指定目录 

  RNFR <old path> 对旧路径重命名 

  RNTO <new path> 对新路径重命名 

  SITE <params> 由服务器提供的站点特殊参数 

  SIZE〈FILENAME〉 文件大小,执行成功返回 213 

  SMNT <pathname> 挂载指定文件结构 

  STAT <directory> 在当前程序或目录上返回信息 

  STOR <filename> 储存(复制)文件到服务器上 

  STOU <filename> 储存文件到服务器名称上 

  STRU <type> 数据结构(F=文件,R=记录,P=页面) 

  SYST 返回服务器使用的操作系统 

  TYPE <data type> 数据类型(A=ASCII,E=EBCDIC,I=binary) 

  FTP返回码/响应码: 

  响应代码 解释说明 

  110 新文件指示器上的重启标记 

  120 服务器准备就绪的时间(分钟数) 

  125 打开数据连接,开始传输 

  150 打开连接 

  200 成功 

  202 命令没有执行 

  211 系统状态回复 

  212 目录状态回复 

  213 文件状态回复 

  214 帮助信息回复 

  215 系统类型回复 

  220 服务就绪 

  221 退出网络 

  225 打开数据连接 

  226 结束数据连接 

  227 进入被动模式(IP 地址、ID 端口) 

  230 登录完成 

  250 文件行为完成 

  257 路径名建立 

  331 要求密码 

  332 要求帐号 

  350 文件行为暂停 

  421 服务关闭 

  425 无法打开数据连接 

  426 结束连接 

  450 文件不可用 

  451 遇到本地错误 

  452 磁盘空间不足 

  500 无效命令 

  501 错误参数 

  502 命令没有执行 

  503 错误指令序列 

  504 无效命令参数 

  530 未登录网络 

  532 存储文件需要帐号 

  550 文件不可用 

  551 不知道的页类型 

  552 超过存储分配 

  553 文件名不允许
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值