FTP:文件传输协议(File Transfer Protocol)

文件传输协议(FTP)使得主机间可以共享文件。FTP 使用 TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输。控制连接使用类似 TELNET 协议在主机间交换命令和消息。

FTP 的主要功能如下:

  • 提供文件的共享(计算机程序/数据);
  • 支持间接使用远程计算机;
  • 使用户不因各类主机文件存储器系统的差异而受影响;
  • 可靠且有效的传输数据。

FTP,尽管可以直接被终端用户使用,但其应用主要还是通过程序实现。

FTP 控制帧即指 TELNET 交换信息,包含 TELNET 命令和选项。然而,大多数 FTP 控制帧是简单的 ASCII 文本,可以分为 FTP 命令或 FTP 消息。FTP 消息是对 FTP 命令的响应,它由带有解释文本的应答代码构成。

协议结构

命令

描述

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>

由服务器提供的站点特殊参数

SMNT <pathname>

挂载指定文件结构

STAT <directory>

在当前程序或目录上返回信息

STOR <filename>

储存(复制)文件到服务器上

STOU <filename>

储存文件到服务器名称上

STRU <type>

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

SYST

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

TYPE <data type>

数据类型(A=ASCII,E=EBCDIC,I=binary)

USER <username>>

系统登录的用户名

标准 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

文件名不允许

FTP协议标准命令的更多相关文章

  1. FTP协议的主动模式和被动模式的区别

    最近准备做一个<FtpCopy系列教程>,主要讲解Ftp协议主动模式和被动模式的区别.以及FTP服务器的安装部署,然后通过几个常用实例演示,详细讲解如何使用FtpCopy进行数据自动备份. ...

  2. FTP协议简介

    1. FTP协议概述 FTP协议的英文全称为File Transfer Protocol, 简称为FTP, 它是从一个主机向一个主机传输文件的协议. FTP协议中客户端和服务器进行文件交互的方式如下图 ...

  3. FTP协议讲解

    FTP 概述 文件传输协议(FTP)作为网络共享文件的传输协议,在网络应用软件中具有广泛的应用.FTP的目标是提高文件的共享性和可靠高效地传送数据. 在传输文件时,FTP 客户端程序先与服务器建立连接 ...

  4. FTP文件传输协议两种模式 ftp协议集,错误码集,ftp客户端命令集

    TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20.FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置.联接的方式.甚至是是否使用相同的操 ...

  5. 初入网络系列笔记(5)FTP协议

    一.借鉴说明,本博文借鉴以下博文 1.锤子,FTP协议,http://www.cnblogs.com/loadrunner/archive/2008/01/09/1032264.html 2.suna ...

  6. FTP协议

    1. FTP协议 什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写. 该协议是Internet文件传送的基础,它由一系列规格说明文 ...

  7. FTP协议及工作原理

    1. FTP协议 什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写. 该协议是Internet文件传送的基础,它由一系列规格说明文 ...

  8. RFC(请求注解)--各种协议-标准

    转自:http://blog.sina.com.cn/s/blog_65d6476a0101cj8n.html RFC(Request For Comments)-意即“请求注解”,包含了关于Inte ...

  9. FTP协议详解(转)

    FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”.用于Internet上的控制文件的双向传输.同时,它也是一个应用程序(Application ...

随机推荐

  1. Fedora20 MATE Destop 环境下安装Sougoupinyin输入法+皮肤

    卸载ibus # yum erase ibus* 选择性安装 fcitx # yum install fcitx fcitx-configtool $ ls -a $ vi .bashrc  .bas ...

  2. Python学习总结6:字符串格式化操作及方法总结

    1. 格式化操作(%) Python中内置有对字符串进行格式化的操作. 模板 格式化字符串时,Python使用一个字符串作为模板.模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格 ...

  3. 07---Net基础加强

    第六节复习 泛型和非泛型集合的区别 通常情况下,建议您使用泛型集合,因为这样可以获得类型安全的直接优点而不需要从基集合类型派生并实现类型特定的成员.此外,如果集合元素为值类型,泛型集合类型的性能通常优 ...

  4. highcharts 实例

    <script src="../../Scripts/jquery-1.7.2.min.js" type="text/javascript">< ...

  5. R12 供应商SQL

    -- 供应商主表数据: SELECT ass.vendor_id vendor_id, ass.party_id party_id, ass.segment1 vendor_code, ass.ven ...

  6. linux下的终端模拟器urxvt的配置

    内容所在的文件: ~/.Xdefaults 文件的内容: URxvt.background:[90]#000000URxvt.foreground:#ffffffURxvt.colorBD:Gray9 ...

  7. zw版【转发·台湾nvp系列Delphi例程】HALCON AffineTransRegion

    zw版[转发·台湾nvp系列Delphi例程]HALCON AffineTransRegion unit Unit1;interfaceuses Windows, Messages, SysUtils ...

  8. TortoiseSVN,排除不想提交文件的方法(转)

    转自:tortoisesvnsubversionfilebuilddialoglist 下面是英文帮助: 利用TortoiseSVN的修改列表 功能可以实现,在新版本中TortoiseSVN特地预置了 ...

  9. 文字处理控件TX Text Control X10独家揭秘(一):数据源自动处理

    TX Text Control即将发布的X10版本,将升级重点还是放到了其比较优势的流式布局报表设计和生成上.慧都获得了来自其开发商Text Control GmbH公司的一手资料,迫不及待的为大家带 ...

  10. Notepad++编辑Pyhton文件的自动缩进的问题(图文)

    转自:http://www.xuebuyuan.com/1102224.html 这个问题一直困扰我很久,Python对缩进很敏感,一般建议缩进用空格,而 Notepad++的自动缩进是用的TAB,g ...