专 题:其它的ftp支持命令
主 讲:qianqian
支持命令
你可以使用HELP命令获得你的ftp程序支持的命令列表,如图6。
图 6 Help命令
ftp>help
Commands may be abbreviated. Commands are:
! delete literal prompt send
? debug ls put status
append dir mdelete pwd trace
ascii disconnect mdir quit type
bell get mget quote user
binary glob mkdir recv verbose
bye hash mls remotehelp
cd help mput rename
close lcd open rmdir
ftp>
结束会话
在FTP提示符输入BYE可以结束会话。
ftp> bye
<the server disconnects the client>
其它说明
你给FTP程序输入的命令和FTP实际传输给FTP服务器的命令有一点不同。例如你输入DIR命令时,实际上FTP程序传给FTP服务器的是LIST命令。以下提到FTP时将指FTP协议,除非另外说明。
FTP中,端口21(控制连接)将用于传输命令;而另外一个端口用于传输数据,默认的是端口20。但是也可以用其它端口,这使得编程变得有点复杂化。
连接
FTP服务器在21号端口接收初始的连接,并且保持着连接的打开状态,这个连接将用于处理FTP命令;这和HTTP不一样,HTTP是无连接协议,每次都会重建连接。另外一个独立的连接被用来传输数据。这两个连接分别叫做控制连接(Control connection)和数据连接(Data Connection)
例如,当要下载一个文件时,客户端通常发送一个PORT命令,在20号端口接受连接,然后使用RETR命令告诉服务器发送文件。服务器发送数据,然后关闭连接。
另外一个客户端可用的命令是PSAV(表示被动模式),客户端通过它告诉服务器监听一个特定的端口。然后连接到那个端口用于数据连接。作者比较喜欢使用被动模式,因为你无需接受一个连接。
如果你要使用PORT命令,最好打开20号端口或者大于1024的可用端口,然后发送一个PORT命令到服务器。1-1024端口由TCP内部保留。
FTP命令
FTP使用一系列简单的命令例如LIST或RETR来完成不同的任务。每一个FTP命令用CR/LF(回车)结束。
(千千VB站整理 转载请保留此信息)
这是我多年以前翻译的作品,有错误请指出。。。。qianqian(thousandvb@yeah.net)