FTP知识集锦

什么是FTP? --------------------------------------------------------------------------------FTP(File Transfer Protocal)是用于Internet上的控制文件的双向传输的协议。同时,它也是一个应用程序。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。为了更好的运用我们的网络资源,让用户与用户之间实现资源共享。 声明:本站所介绍的资源一般都是有一定的时效性,资源失效与本站无关,但是本站将会尽全力提供给大家更好更有效的资源!--------------------------------------------------------------------------------FTP教程(上)port和pasv模式释义、设置教程 --------------------------------------------------------------------------------所谓port模式也就是主动模式。在FTP协议刚刚建立的时候,只定义了普通的连接模式,也就是port模式。Port模式的连接过程是:在开始一个FTP的连接时,客户端程序首先会为自己随机分配一个TCP端口,它使用这个个端口向服务器的FTP端口(默认为21)发出连接请求,服务器接受请求之后会建立一条控制链路,然后客户程序发出port命令(通常格式为PORT A, A, A, A, I,I,其中A,A,A,A为客户端IP地址,I,I为随机的一个数据连接端口号)告诉服务器它的数据通道的端口打开了。当需要传送数据时,服务器便从随机选择的一个端口向客户端的20端口发送连接请求,请求被接受之后便开始传输数据,数据链路通道也就打开了。---------------所谓pasv模式也就是被动模式。随着网络的不断发展,出现了防火墙。老的FTP协议在遇到防火墙的时候就束手无策了,这是因为20端口往往是防火墙的重点封堵对象,因此数据也就不能发送出去了,于是pasv模式就诞生了。Pasv模式的连接过程是:在开始一个FTP的连接时,客户端程序首先为自己随机分配一个TCP端口,它使用这个端口向服务器的FTP端口(默认为21)发出连接请求,服务器接受请求之后会建立一条控制链路,然后客户端程序发出PASV命令,代替原来PORT命令告诉服务器它的数据连接端口,于是服务器便为自己随机分配一个数据通道端口,并将这个端口号告诉客户端程序。当需要传送数据时,客户端程序会向服务器的数据通道端口发送连接请求,请求被接受之后便开始传输数据,数据链路通道也就打开了。---------------1.所谓主动和被动可以看作是以服务器端为基准,当服务器主动向客户端发送数据连接请求时,为主动模式;当客户端主动向服务器发送数据连接请求时,为被动模式。2.无论客户端还是服务器端有防火墙,或是两边都有防火墙,只要PASV模式下两边数据通道的连接端口在防火墙的拦截之外就可以建立成功。如果防火墙将所有的端口全部堵死,则不能建立数据通道。---------------FTP使用中PASV模式的操作方法(注:此方法只有在无法登录和下载的情况下才可使用!!! )取消 pasv 模式的方法有许多朋友的 FTP 服务器是不支持 PASV 模式的,登入時要取消 PASV 模式才行。现将几种 FTP 下载工具的取消方法公布如下:1.把 flashget 的 pasv 模式关掉的方法点菜单上的“工具”->“选项”->“代理服务器”->“直接连接”->编辑->把“ pasv 模式”前的勾勾去掉,一路确定回来。2.把 Cutftp 的 pasv 模式关掉的方法点菜单上的“文件”->“站点管理”->在“站点管理器”窗口->“新建站点”->填上“域名”->“编辑”->“常规”->把“使用 pasv 模式”前的勾勾去掉。3.把 FlashFXP 的 pasv 模式关掉的方法点菜单上的“站点”->“站点管理器”->站点管理器窗口->“新建站点”->填上“域名”->“选项”->把“使用被动模式”前的勾勾去掉->“应用” 即可。4.把 NetAnts 的 pasv 模式关掉的方法点菜单上的"选项"->"参数设置"->"代理"->“直接连接”->编辑->把“ pasv 模式”前的勾勾去掉,一路确定回来。---------------相信大家都知道FTP是什么啦,但我相还有很多人不知道什么是PASV和PORT,或者你知道但不知道他们到底是什么。下面介绍一下这两种模式吧:PORT其实是Standard模式的另一个名字,又称为Active模式。中文意思是“主动模式。PASV也就是Passive的简写。中文就是“被动模式。两者之间有什么不同:不同之处是由于PORT这个方式需要在接上TCP 21端口后,服务器通过自己的TCP 20来发出数据。并且需要建立一个新的连接来传送档案。而PORT的命令包含一些客户端没用的资料,所以有了PASv的出现。而PASV模式就当然拥有PORT模式的优点及去掉一些PORT的缺点。PASV运行方式就是当服务器接收到PASV命令时,就会自动从端口1024到5000中随机选择,而且还会使用同一个端口来传送数据,不用建立新的连接。**【03.10】FTP教程(下) ftp登陆错误详解(转载)--------------------------------------------------------------------------------FTP教程(下) ftp登陆错误详解 --------------------------------------------------------------------------------ftp登陆不了是很经常碰到的事,很多人常常是不加分析就发贴询问。老实说,这样既浪费自己时间,又浪费别人精力,还常常不能得到满意的回答。因此每一位希望从ftp站点发现资源的朋友都有必要学会分析登陆失败的原因,两个基本知识:1 对方很可能暂时没开ftp 2 要学会看登陆错误指令所谓登陆提示,是指登陆时你与服务器双向交流的一些指令及状态提示,你如果看到类似这样的字样,那就是了:*** CuteFTP Pro 2.0 - build Dec 4 2001 *** 状态:> 正在获取列表“”... 状态:> 正在连接到 ftp 服务器 211.*.*.*:* (ip = 211.*.*.*:*)... 状态:> Socket 已连接。正在等候欢迎消息... 220 FTP服务器已启动状态:> 已连接。正在验证... 命令:> USER software 331 User name okay, need password.命令:> PASS ***** 230 User logged in, proceed.状态:> 登录成功。命令:> PWD 257 "/" is current directory.这个东西是非常重要的,请一定加以注意。----------------常见错误分析一. 如果见到下述字样,并停留较长时间状态:> 正在连接到 ftp 服务器 211.*.*.*:*(ip = 211.*.*.*:*)... 后又见到:错误:> 无法连接到远程服务器。Socket 错误 = #10060。状态:> 正在等候 30 秒... 出现该种情况有两种可能:1为对方未开ftp或者无法连通,请与ftp管理者联系2则是因为端口填写错误。一般默认为21,但是因为此种端口在某些网络中易引起冲突,安全性也值得商榷,故多数ftp更改了端口。如果你没有填写端口(ftp软件会默认21)或者填写错误,也会引起10060错误. 二. 如果见到下述字样Thu Mar 07 11:44:56 2002 530 Sorry, no ANONYMOUS access allowed 表明该ftp不允许匿名者登陆,请与ftp管理者联系,并取得账号三. 如果见到下述字样Thu Mar 07 11:46:29 2002 USER bugdown Thu Mar 07 11:46:30 2002 331 User name okay, need password. Thu Mar 07 11:46:30 2002 PASS ******** Thu Mar 07 11:46:30 2002 530 Not logged in. 有两种可能:1 账号或者密码输入错误,被拒绝登陆。请先确定你没有输入错误(较复杂的密码建议用复制粘贴来填写,并注意有无空格),然后与ftp管理者联系以确认你的账号没有过期。目前大部分的ftp都会定期更改密码,所以此宗错误是最常见的。2 用了花生壳等动态域名,有时会出现这样的现象:如果ftp没有开,有人以动态域名登陆时,动态域名的服务商会将你自动转到它自己的提示性ftp,这时有可能出现密码错误,也有可能登陆到它的服务器。部分以iis为基础建立的ftp有可能转至微软的服务器,现象类同。四. 如果见到下述字样Thu Mar 07 11:51:25 2002 421 Too many users - please try again later. 这是因为ftp管理者设定了该帐号(或者该域名)的最大登陆人数,现在已经达到这一限制,因此你无法登陆。只有等待其他用户退出或者使用其他账号,你才可能进入ftp. 五. 如果见到下述字样命令:> PASS ***** 530 Not logged in, only one session from same IP allowed at a time. 错误:> 未登录。状态:> 连接已关闭。该帐号只允许单线程登陆,因此请注意你是否打开多个窗口或者已经有一个线程在下载六. 在登陆人数已满,而你不断尝试登陆,有三种可能的情况:1 你终于挤进去了2 谈出窗口提示错误,并在登陆错误指令见到这样的字样:错误:> 控制连接已关闭。表明ftp服务器拦截你这样频繁的尝试。你可以不管它,确定之后继续尝试;但是稍有道德的人都应该把ftp软件的全局设置中关于连接重试尝试的间隔时间修改到较大,一般提倡30秒到2分钟。3 你被ban了。serv-U所作的服务器不能自动ban ip,但是管理者可以手工ban,部分服务器端软件可以自动封ip。被ban的提示为:命令:> PASS ***** 530 Not logged in, unauthorized IP address. 就是说你的ip是不合法的,不管是因为什么原因,总之除非你与管理者联系并解封,实在是没有继续尝试的必要。当然,管理者可能只是ban你一段时间,你可以过后再重新尝试。但是一定记得更改你的尝试间隔时间。七. 有时候不是因为封了你,而是因为该帐号限制只有部分许可的ip可以登陆,同样你必须与管理者联系,请他手工添加你的ip120    服务在nnn分钟内准备好125    数据连接已打开,准备传送150    文件状态良好,打开数据连接200    命令成功202    命令未实现211    系统状态或系统帮助响应212    目录状态213    文件状态214    帮助信息,信息仅对人类用户有用215    名字系统类型220    对新用户服务准备好221    服务关闭控制连接,可以退出登录225    数据连接打开,无传输正在进行226    关闭数据连接,请求的文件*作成功227    进入被动模式230    用户登录250    请求的文件*作完成257    创建"PATHNAME"331    用户名正确,需要口令332    登录时需要帐户信息350    请求的文件*作需要进一步命令421    连接用户过多425    不能打开数据连接426    关闭连接,中止传输450    请求的文件*作未执行451    中止请求的操作:有本地错误452    中止请求的操作:系统存储空间不足500    格式错误,命令不可识别501    参数语法错误502    命令未实现503    命令顺序错误504    此参数下的命令功能未实现530    账号或密码错误532    存储文件需要帐户信息550    未执行请求的操作551    请求操作中止:页类型未知552    请求的文件操作中止,存储分配溢出553    未执行请求的操作:文件名不合法--------------------------------------------------------------------------------构建个人FTP服务器[教程] --------------------------------------------------------------------------------用Serv-U FTP Server构建自己的强力FTP服务器作者:吕达嵘在网上做过软件下载的人都知道,建立一个FTP下载服务器相对比较简单,一般用WIN2000下自带的IIS就可以,但IIS在功能上好多都不尽人如意,下面我就介绍一款功能非常强大,但使用简单的FTP服务器构建软件-Serv-U FTP Server,让我们也来体验一下自己DIYFTP服务器的快乐!在说明使用之前,让我先大致介绍一下Serv-U(本文中提到的Serv-U版本3.0.0.17), Serv-U 是一个可以运行于Windows 95/98/2000/xp 和 Windows NT 4.0下的FTP服务器程序如图所示,有了它,你的个人电脑就可以模拟为一个FTP服务器,也就是说,你所连接的网络中的计算机用户可以访问你的个人电脑,通过FTP协议(文件传输协议)复制、移动、删除你的电脑中的文件或文件夹,可以做一切权限所允许的事情。FTP协议规定了计算机之间的标准通讯方式,使所有不同类型,不同操作系统,不同格式的电脑之间得以互换文件。它可以用最简单的方式创建用户帐号,并且在硬盘空间上划分一定的区域用以存放文件,让用户以各种FTP客户端软件(如CuteFTP、WS_FTP等)上传或下载所需要的文件。有许多FTP服务器和客户端软件可用于不同的系统中,Serv-U是用于运行MS-Windows 并且已安装了WinSock 版本 1.1 兼容 TCP/IP协议的个人电脑中的,这几乎包括了所有的Windows操作系统。Serv-U由两大部分组成,引擎和用户界面。Serv-U引擎(ServUDaemon.exe)其实是一个常驻后台的程序,也是Serv-U整个软件的心脏部分,它负责处理来自各种FTP客户端软件的FTP命令,也是负责执行各种文件传送的软件。在运行Serv-U引擎也就是 ServUDaemon.exe文件后,我们看不到任何的用户界面,它只是在后台运行,通常我们无法影响它,但在ServUAdmin.exe中我们可以停止和开始它。Serv-U引擎可以在任何Windows平台下作为一个本地系统服务来运行,系统服务随操作系统的启动而开始运行,而后我们就可以运行用户界面程序了。在Win NT/2000系统中,Serv-U会自动安装为一个系统服务,但在Win 9x/Me中,你需要在“服务器”面板中选择“自动开始”,才能让它转为系统服务。Serv-U用户界面(ServUAdmin.exe)也就是Serv -U管理员,它负责与Serv-U引擎之间的交互。它可以让用户配置Serv-U,包括创建域、定义用户、并告诉服务器是否可以访问。启动Serv-U管理员最简单的办法就是直接点接系统栏的“U”形图标,当然,你也可以从开始菜单中运行它。在此有必要把Serv-U中的一些重要的概念给大家讲清楚:每个正在运行的Serv-U引擎可以被用来运行多个“虚拟”的FTP服务器,在管理员程序中,每个“虚拟”的FTP服务器都称为“域”,因此,对于服务器来说,不得不建立多个域时是非常有用的。每个域都有各自的“用户”、“组”和设置。一般说来, “设置向导”会在你第一次运行应用 程序时设置好一个最初的域和用户帐号。服务器、域和用户之间的关系大家可以参考下表:*Serv-U 服务器*域 1*用户帐号 1*用户帐号 2*用户帐号 3*域 2*用户帐号 1*用户帐号 2*域 3*用户帐号 1*用户帐号 1这个表有点类似与Serv-U管理员中服务器、域和用户的排列。Serv-U FTP Server 是试用软件,安装后三十天内,你可以作为“专业版本”使它,但试用期过后,你就只能作为免费的“个人版本”使用了,只有基本功能了。好了,说了这么多,还没到关键部分-如何自己来建立FTP服务器。下面我就一步一步来说明。一、 安装原版软件和汉化补丁,这个过程就不多说了,想必没人不会的。二、 建立第一个本地FTP服务器安装完成后程序会自动运行,你也可以在菜单中选择运行。1、 第一次运行程序,它会弹出设置向导窗口 将会带你完成最初的设置,2、 单击“下一步”,出现“显示菜单图像”的窗口,问你是否在菜单中显示小图像,看各人喜欢了;3、 单击“下一步”,这个窗口是让你在本地第一次运行FTP服务器,只要“下一步”就行了。4、 接下来要你输入你的IP地址,如果你自己有服务器,有固定的IP,那就请输入IP地址,如果你只是在自己电脑上建立FTP,而且又是拨号用户,有的只是动态IP,没有固定IP,那这一步就省了,什么也不要填,Serv-U 会自动确定你的IP地址,“下一步”;5、 在这儿要你输入你的域名,如果你有的话,如:ftp.abc.com,没有的话,就随便填一个;6、 “下一步”,询问你是否允许匿名访问,一般说来,匿名访问是以Anonymous为用户名称登录的,无需密码,当然如果你想成立一个会员区什么的,就应该选择“否”,不让随便什么人都可以登录,只有许可用户才行,在此我们填“是”;7、 “下一步”,问你匿名用户登录到你的电脑时的目录,你可以自己指定一个硬盘上已存在的目录,如F:\temp\xyz;8、 “下一步”,询问你是否要锁定该目录,锁定后,匿名登录的用户将只能认为你所指定的目录(F:\temp\xyz)是根目录,也就是说他只能访问这个目录下的文件和文件夹,这个目录之外就不能访问,对于匿名用户一般填“是”;9、 “下一步”,询问你是否创建命名的帐号,也就是说可以指定用户以特定的帐号访问你的FTP,这对于办会员区可很有用哦,你可以对于每个人都创建一个帐号,每个帐号的权限不同,就可以不同程序地限制每个人的权利,方法将在后面讲到,这里选择“是”;10、 “下一步”,请你填入所要建立的帐号的名称, 11、 “下一步”,请输入密码,如:123,12、 “下一步”,询问登录目录是什么,这一步与第7步一样,如:F:\temp13、 “下一步”,询问你是否要锁定该目录,同第8步,这里选择“否”;14、 接下来询问你这次创建的用户的管理员权限,有几项选择:无权限,组管理员,域管理员,只读管理员和系统管理员,每项的权限各不相同;这里选择“系统管理员”;15、 最后一步,点击“完成”就OK了,你有什么需要修改的,可以点“上一步”,或者进入Serv-U管理员直接修改。至此,我们建立了一个域ftp.abc.com,两个用户,一个Anonymous,一个ldr。 三、 既然我们已经建立好FTP服务器,那么我们就应该可以用FTP客户端软件来尝试登录。怎么办呢?其实很简单,我们不用上网,就可以测试。我们知道,不上网时,本地机的IP地址默认就为127.0.0.1,FTP端口号为21。打开FTP客户端软件,我就用FlashFXP来说明,打开快速连接,填入相应内容,然后连接,可以看到,我左边窗格以Anonymous登录,右边窗格以ldr登录,由于是本地机,所以速度奇快,上网后,假如我要让你登录到我的电脑上,我只要把我的上网时的IP地址给你,你就可以匿名访问我的电脑了(注意不要开防火墙),是不是很方便?四、Serv-U管理员中的各项设置在设置完成后,将会进入Serv-U管理员的主界面,左边窗格中显示各个栏目,右边窗格中显示各个栏目的具体选项,下面就大概讲一讲设置内容。1、 我们可以人为地控制Serv-U引擎的运行或停止,记住,在Win 9x/Me 中,我们就要在此选择“系统服务”,才会运行Serv-U引擎。2、 “许可”,如果你花美元买了注册号,就可以在此输入。3、 “设置”,这个设置是对于“本地服务器”来说的。“常规”设置中,可以限制服务器的最大速度,可以拦截FXP(站点到站点传送),也可以限制用户的数量,这样不至于你的服务器被拖跨。“目录缓存”设置中.--------------------------------------------------------------------------------FTP使用过程当中须注意事项 --------------------------------------------------------------------------------1.避免出现零字节文件。在上传时,不要随意中途停止操作,最好不要中途下线。   3.上传文件要附上说明的文本文件,说明文件名应与文件名称相同,如文件名称为note.zip,说明文件名就应为note.txt,以方便别人了解你的文件内容,来进行取舍。   4.目前大部分FTP站点都是支持续传的。当你进入某站点时候盯着注意信息窗,如果显示了“This site can resume broken downloads”,即表示支持续传功能。  5.因为FTP站是多用户系统,因此对于同一个目录或文件,不同的用户拥有不同的权限。如果你不能上传或下载某些文件,或者抓下来的文件是零字节,一般是因为用户的权限不够。  6.关于Port(端口):预设是21,大部分FTP站的port都规定是21,但一些FTP站就不一定了,如果你实在不能进入,就只有和网管联系了。  7.注意传送文件结束后,在FTP Site Manager(FTP网站管理者)中,不要将Password密码保留,容易被别人利用。  8.可按如下步骤显示远程区域的隐含目录:在FTP Site Manager选Edit site编辑某个站点。在“Remote Directory”项中输入“-rtaF”,并且不要复选“Local Filter”项。 --------------------------------------------------------------------------------使用过程当遇到的问题 --------------------------------------------------------------------------------1、站点关闭了。有些服务器只在特定时间开放,其他时候是无法连的,不过也有可能是永久性关闭。 2、连接人数过多。部分服务器限制了最大连结束,FTP软件里显示"Too many user"就是这种情况。ftp软件的自动重新连接时间一般是30秒,不要把重连时间改短,改短了可能会封IP。建议加上连通后的声音提示。 3、IP限制。一些服务器一个IP只允许一个线程,超过了就会无法连接,情况严重还会封IP,这样只能断线重拨了。如果是C类IP被封可能重拨都不管用。4、地址填错了。注意FTP软件里要填的地址不包括"ftp://"。5、用户名密码不对。不是所有的FTP服务器都可以匿名登陆的,如果你的密码是粘贴上去的注意不要多复制了空格。有些服务器的密码经常更换,这就需要重新找密码了。资源区的一部分站点给出了主页地址或论坛地址,里面可能有密码。有很多站点的http和ftp是同一台服务器,在浏览器里直接输地址看看(注意不要把ftp://带上,如果域名的开头是ftp,换成www试试看。)。 6、端口号错了。FTP服务器的默认端口号是21,但有些站点可能会修改端口号。--------------------------------------------------------------------------------FTP命令全集[整理] --------------------------------------------------------------------------------FTP命令是Internet用户使用最频繁的命令之一,熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。 如果你想学习使用进行后台FTP下载,那么就必须学习FTP指令。 FTP的命令行格式为: ftp -v -d -i -n -g [主机名] , 其中 -v 显示远程服务器的所有响应信息; -n 限制ftp的自动登录,即不使用;.n etrc文件; -d 使用调试方式; -g 取消全局文件名。 FTP使用的内部命令如下(中括号表示可选项): 1.![cmd[args>:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip 2.$ macro-ame[args]: 执行宏定义macro-name。 3.account[password]: 提供登录远程系统成功后访问系统资源所需的补充口令。 4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 5.ascii:使用ascii类型传输方式。 6.bell:每个命令执行完毕后计算机响铃一次。 7.bin:使用二进制文件传输方式。 8.bye:退出ftp会话过程。 9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。 10.cd remote-dir:进入远程主机目录。 11.cdup:进入远程主机目录的父目录。 12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。 13.close:中断与远程服务器的ftp会话(与open对应)。 14.cr:使用asscii方式传输文件时,将回车换行转换为回行。 15.delete remote-file:删除远程主机文件。 16.debug[debug-value]:设置调试方式, 显示发送至远程主机的每条命令,如:deb up 3,若设为0,表示取消debug。 17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件 18.disconnection:同close。 19.form format:将文件传输方式设置为format,缺省为file方式。 20.get remote-file[local-file]: 将远程主机的文件remote-file传至本地硬盘的local-file。 21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。 22.hash:每传输1024字节,显示一个hash符号(#)。 23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。 24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。 25.image:设置二进制传输方式(同binary)。 26.lcd[dir]:将本地工作目录切换至dir。 27.ls[remote-dir][local-file]:显示远程目录remote-dir, 并存入本地文件local-file。 28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。 29.mdelete[remote-file]:删除远程主机文件。 30.mdir remote-files local-file:与dir类似,但可指定多个远程文件,如 :mdir *.o.*.zipoutfile 。 31.mget remote-files:传输多个远程文件。 32.mkdir dir-name:在远程主机中建一目录。 33.mls remote-file local-file:同nlist,但可指定多个文件名。 34.mode[modename]:将文件传输方式设置为modename, 缺省为stream方式。 35.modtime file-name:显示远程主机文件的最后修改时间。 36.mput local-file:将多个文件传输至远程主机。 37.newer file-name: 如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。 38.nlist[remote-dir][local-file]:显示远程主机目录的文件清单,并存入本地硬盘的local-file。 39.nmap[inpattern outpattern]:设置文件名映射机制, 使得文件传输时,文件中的某些字符相互转换, 如:nmap $1.$2.$3[$1,$2].[$2,$3],则传输文件a1.a2.a3时,文件名变为a1,a2。 该命令特别适用于远程主机为非UNIX机的情况。 40.ntrans[inchars[outchars>:设置文件名字符的翻译机制,如ntrans1R,则文件名LLL将变为RRR。 41.open host[port]:建立指定ftp服务器连接,可指定连接端口。 42.passive:进入被动传输方式。 43.prompt:设置多个文件传输时的交互提示。 44.proxy ftp-cmd:在次要控制连接中,执行一条ftp命令, 该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。 45.put local-file[remote-file]:将本地文件local-file传送至远程主机。 46.pwd:显示远程主机的当前工作目录。 47.quit:同bye,退出ftp会话。 48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst. 49.recv remote-file[local-file]:同get。 50.reget remote-file[local-file]:类似于get, 但若local-file存在,则从上次传输中断处续传。 51.rhelp[cmd-name]:请求获得远程主机的帮助。 52.rstatus[file-name]:若未指定文件名,则显示远程主机的状态, 否则显示文件状态。 53.rename[from][to]:更改远程主机文件名。 54.reset:清除回答队列。 55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。 56.rmdir dir-name:删除远程主机目录。 57.runique:设置文件名只一性存储,若文件存在,则在原文件后加后缀.1, .2等。 58.send local-file[remote-file]:同put。 59.sendport:设置PORT命令的使用。 60.site arg1,arg2...:将参数作为SITE命令逐字发送至远程ftp主机。 61.size file-name:显示远程主机文件大小,如:site idle 7200。 62.status:显示当前ftp状态。 63.struct[struct-name]:将文件传输结构设置为struct-name, 缺省时使用stream结构。 64.sunique:将远程主机文件名存储设置为只一(与runique对应)。 65.system:显示远程主机的操作系统类型。 66.tenex:将文件传输类型设置为TENEX机的所需的类型。 67.tick:设置传输时的字节计数器。 68.trace:设置包跟踪。 69.type[type-name]:设置文件传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。 70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 3 71.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。 72.verbose:同命令行的-v参数,即设置详尽报告方式,ftp 服务器的所有响 应都将显示给用户,缺省为on. 73.?[cmd]:同help
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 目标检测的定义 目标检测(Object Detection)的任务是找出图像中所有感兴趣的目标(物体),确定它们的类别和位置,是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具有挑战性的问题。 目标检测任务可分为两个关键的子任务,目标定位和目标分类。首先检测图像中目标的位置(目标定位),然后给出每个目标的具体类别(目标分类)。输出结果是一个边界框(称为Bounding-box,一般形式为(x1,y1,x2,y2),表示框的左上角坐标和右下角坐标),一个置信度分数(Confidence Score),表示边界框中是否包含检测对象的概率和各个类别的概率(首先得到类别概率,经过Softmax可得到类别标签)。 1.1 Two stage方法 目前主流的基于深度学习的目标检测算法主要分为两类:Two stage和One stage。Two stage方法将目标检测过程分为两个阶段。第一个阶段是 Region Proposal 生成阶段,主要用于生成潜在的目标候选框(Bounding-box proposals)。这个阶段通常使用卷积神经网络(CNN)从输入图像中提取特征,然后通过一些技巧(如选择性搜索)来生成候选框。第二个阶段是分类和位置精修阶段,将第一个阶段生成的候选框输入到另一个 CNN 中进行分类,并根据分类结果对候选框的位置进行微调。Two stage 方法的优点是准确度较高,缺点是速度相对较慢。 常见Tow stage目标检测算法有:R-CNN系列、SPPNet等。 1.2 One stage方法 One stage方法直接利用模型提取特征值,并利用这些特征值进行目标的分类和定位,不需要生成Region Proposal。这种方法的优点是速度快,因为省略了Region Proposal生成的过程。One stage方法的缺点是准确度相对较低,因为它没有对潜在的目标进行预先筛选。 常见的One stage目标检测算法有:YOLO系列、SSD系列和RetinaNet等。 2 常见名词解释 2.1 NMS(Non-Maximum Suppression) 目标检测模型一般会给出目标的多个预测边界框,对成百上千的预测边界框都进行调整肯定是不可行的,需要对这些结果先进行一个大体的挑选。NMS称为非极大值抑制,作用是从众多预测边界框中挑选出最具代表性的结果,这样可以加快算法效率,其主要流程如下: 设定一个置信度分数阈值,将置信度分数小于阈值的直接过滤掉 将剩下框的置信度分数从大到小排序,选中值最大的框 遍历其余的框,如果和当前框的重叠面积(IOU)大于设定的阈值(一般为0.7),就将框删除(超过设定阈值,认为两个框的里面的物体属于同一个类别) 从未处理的框中继续选一个置信度分数最大的,重复上述过程,直至所有框处理完毕 2.2 IoU(Intersection over Union) 定义了两个边界框的重叠度,当预测边界框和真实边界框差异很小时,或重叠度很大时,表示模型产生的预测边界框很准确。边界框A、B的IOU计算公式为: 2.3 mAP(mean Average Precision) mAP即均值平均精度,是评估目标检测模型效果的最重要指标,这个值介于0到1之间,且越大越好。mAP是AP(Average Precision)的平均值,那么首先需要了解AP的概念。想要了解AP的概念,还要首先了解目标检测中Precision和Recall的概念。 首先我们设置置信度阈值(Confidence Threshold)和IoU阈值(一般设置为0.5,也会衡量0.75以及0.9的mAP值): 当一个预测边界框被认为是True Positive(TP)时,需要同时满足下面三个条件: Confidence Score > Confidence Threshold 预测类别匹配真实值(Ground truth)的类别 预测边界框的IoU大于设定的IoU阈值 不满足条件2或条件3,则认为是False Positive(FP)。当对应同一个真值有多个预测结果时,只有最高置信度分数的预测结果被认为是True Positive,其余被认为是False Positive。 Precision和Recall的概念如下图所示: Precision表示TP与预测边界框数量的比值 Recall表示TP与真实边界框数量的比值 改变不同的置信度阈值,可以获得多组Precision和Recall,Recall放X轴,Precision放Y轴,可以画出一个Precision-Recall曲线,简称P-R
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值