1. 如何使用FTP命令,需详解
ftp /?
将文件传送到运行 FTP 服务器服务(经常称为后台程序)的计算机以及将文件从该计算机
传出。可以交互使用 Ftp。
FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:recvbuf
fer] [-b:asyncbuffers] [-w:windowsize] [host]
-v 禁止显示远程服务器响应。
-n 禁止在初始连接时自动登录。
-i 关闭多文件传输过程中的
交互式提示。
-d 启用调试。
-g 禁用文件名通配(请参阅 GLOB 命令)。
-s:filename 指定包含 FTP 命令的文本文件;命令
在 FTP 启动后自动运行。
-a 在绑字数据连接时使用所有本地接口。
-A 匿名登录。
-x:send sockbuf 覆盖默认的 SO_SNDBUF 大小 8192。
-r:recv sockbuf 覆盖默认的 SO_RCVBUF 大小 8192。
-b:async count 覆盖默认的异步计数 3
-w:windowsize 覆盖默认的传输缓冲区大小 65535。
host 指定主机名称或要连接到的远程主机
的 IP 地址。
注意:
- mget 和 mput 命令将 y/n/q 视为 yes/no/quit。
- 使用 Ctrl-C 中止命令。
2. ftp命令的基础命令
进入想要连接的FTP站点后,用户就可以进行相应的文件传输操作了,其中一些重要 的命令及相似的命令 如下:
1、HELP、、RHELP、REMOTEHELP
HELP显示LOCAL端的命令说明,若不接受则显示所有可用命令;
?相当于HELP,例如:?CD:
RHELP同HELP,只是它用来显示REMOTE端的命令说明;
REMOTEHELP相当于RHELP。
2、ASC(ASCll)、bin(BINARY)、IMAGE、TYPE
ASCⅡ切换传输模式为文字模式(只能用来传送DOC文件,因为是7-BIT);
BINARY切换传输模式为二进制模式(除文字文件外皆用此模式);
IMAGE相当于BINARY:
TYPE让你更改或显示传输模式。
3、BYE、QUIT
BYE退出FTP:
QUIT相当于BYE。
4、CD、CDUP、LCD、P~WD、 !
CD改变当前工作目录,例如:CDPUB;
CDUP回到上一层目录,相当于你打CD..:
LCD让你更改或显示LOCAL端的工作目录,例如:LCDTMP;
PWD显示的工作目录(REMOTE端):
!让你执行外壳命令,例如:!LS。
5、DELETE、MDELETE、RENAME
DELETE删除REMOTE端的文件:
MDELETE批量删除文件,需配合?或,*
RENAME更改REMOTE端的文件名。
6、GET、MGET、PUT、MPUT、RECV、SEND
GET下传文件;
MGET批量下传文件,需配合万用字符,例如:MGET*.GZ;
PUT上传文件;
MPUT批量上传文件,需配合万用字符;
RECV相当于GET(RECV为RECEIVE的简写):
SEND相当于PUT。
7、HASH、PROMPT、VERBOSE、STATUS、BELL
HASH切换#字号的出现,每一个#字号表示传送了1024/8192BYTES:
PROMPT切换iNTERACTⅣEON/OFF;
VERBOSE切换所有文件传输过程的显示;
STATUS显示的一些参数:
BELL当指令做完时会发出叫声。
8、LS、DIR、MLS、MDIR、MKDIR、RMDIR
LS有点像UNIX下的LS(LIST)命令:
DIR相当于LS-L(LIST-LONG);
MLS只是将远端某目 录下的文件存于LOCAL端的某文件里;
MDIR相当于MLS;
MKDIR像DOS下的MD(创建子目录)一样:
RMDIR像DOS下的RD(删除子目录)一样。
9、OPEN、CLOSE、DISCONNECT、USER
OPEN连接某个远端FTP服务器;
CLOSE关闭连接; DISCONNECT相当于CLOSE;
USER再输入一次用户名和口令(有点像UNⅨ下的SU)。
3. 使用FTP的命令下载和上传文件
注意 CD命令只能进入文件夹,不能进入到文件(**。txt)里面。
在你ftp 之前,cmd输入命令前面的那个目录就是ftp默认的根目录,
比如你cmd显示的是 E:\ 那么你ls显示的就是e:\下面的东西了, 而PUT上传命令也是一样,如果你上传了一个文件,它就会在你目前的E:\下面, 当然如果你要PUT到其他目录 你可以在PUT后面接 路径
4. 什么是ftp
FTP是File Transfer Protocol的缩写,中文翻译为"文件传输协议"。它是在计算机和网络之间交换文件的最简单的方法。像传送可显示文件的HTTP和电子邮件的SMTP一样,FTP也是应用TCP/IP协议的应用协议标准。FTP通常用于将网页从创作者上传到服务器上供人使用,而从服务器上下传文件也是一种非常普遍的使用方式。
你可以用非常简单的DOS界面来使用FTP,在Windows 98中,单击"开始→运行",输入FTP后面接着输入主机IP地址或网址(注意,不要加上http://),例如输入:www.intodigi.com,就可以连接到笔者的网站,连接后会出现User(用户名)和password(密码),连接成功后,就可以用命令来操作。常用的有dir:显示此目录下的文件get:下载文件put:上传文件。或者使用第三方提供的图形界面的FTP来更新(删除,重命名,移动和复制)服务器上的文件,一般的FTP软件还支持续传的功能。现在有许多服务器支持匿名登录,允许用户使用FTP和anonymous作为用户名进行登录,通常可使用任何口令或只按回车键。
5. FTP常用命令有哪些
Ftp命令的功能是在本地机和远程机之间传送文件。该命令的一般格式如下:
c:> ftp 主机名/IP
最常用的命令有:
ls 列出远程机的当前目录
cd 在远程机上改变工作目录
lcd 在本地机上改变工作目录
ascii 设置文件传输方式为ASCII模式
binary 设置文件传输方式为二进制模式
close 终止当前的ftp会话
hash 每次传输完数据缓冲区中的数据后就显示一个#号
get(mget) 从远程机传送指定文件到本地机
put(mput) 从本地机传送指定文件到远程机
open 连接远程ftp站点
quit 断开与远程机的连接并退出ftp
? 显示本地帮助信息
6. FTP的主要命令有那些
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用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.cp:进入远程主机目录的父目录。
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]:显示远程主机目录,并将结果存入本地文件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]]:设置文件名字符的翻译机制,如ntrans 1R,则文件名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。
7. FTP使用详解
1.什么是FTP(文件传输协议)
FILE TRANSFERPROTOCOL(FTP)意为文件传输协议,用于管理计算机之间的文件传送。FTP通常指文件传输服务。
FTP是Internet上使用非常广泛的一种通讯协议。它是由支持Internet文件传输的各种规则所组成的集合,这些规则使 Internet用户可以把文件从一个主机拷贝到另一个主机上,因而为用户提供了极大的方便和收益。FTP通常也表示用户执行这个协议所使用的应用程序(例如:凯屋“上当“),从而获取所需的信息资料。
FTP和其它 Internet服务一样,也是采用客户机/服务器方式。使用方法很简单,启动FTP客户端程序先与远程主机建立连接,然后向远程主机发出传输命令,远程主机在收到命令后就给予响应,并执行正确的命令。FTP有一个根本的限制,那就是,如果用户未被某一FTP主机授权,就不能访问该主机,实际上是用户不能远程登录(Remote Login)进入该主机。也就是说,如果用户在某个主机上没有注册获得授权,没有用户名和口令,就不能与该主机进行文件的传输。而AnonymousFTP(匿名FTP)则取消了这种限制。
2.什么是Anonymous FTP(匿名文件传输)
Anonymous(匿名文件传输)能够使用户与远程主机建立连接并以匿名身份从远程主机上拷贝文件,而不必是该远程主机的注册用户。用户使用特殊的用户名“Anonymous”和“guest”就可有限制地访问远程主机上公开的文件。现在许多系统要求用户将Emai1地址作为口令,以便更好地对访问进行跟综。出于安全的目的,大部分匿名FTP主机一般只允许远程用户下载(download)文件,而不允许上传 (upload)文件。也就是说,用户只能从匿名FTP主机拷贝需要的文件而不能把文件拷贝到匿名FTP主机。另外,匿名FTP主机还采用了其他一些保护措施以保护自己的文件不至于被用户修改和删除,并防止计算机病毒的侵入。在具有图形用户界面的WorldWide Web环境于1995年开始普及以前,匿名FTP一直是Internet上获取信息资源的最主要方式,在Internet成千上万的匿名PTP主机中存储着无以计数的文件,这些文件包含了各种各样的信息,数据和软件。人们只要知道特定信息资源的主机地址,就可以用匿名FTP登但是匿名FTP仍是 Internet上传输分发软件的一种基本方法。
3.什么是Remote Login(远程登录)
Remote Login(远程登录)指用户通过Internet登录到远程主机上。在这种连接建立之后,用户所在的计算就可以作为远程主机的终端一样使用。 Internet上远程登录的主要方式是Telnet,匿名FTP也需要首先经过远程登录才能进行文件传输。
4.什么是Upload(上传)
Upload(上传)指把数据从本地计算机传到远程主机上,因此受到严格的管理和控制,但Upload是提交用户信息和要求以实现远程交互应用的基础。
5.何为FTP连接
进行FTP连接首先要给出目的FTP服务器的名称或地址,当连接到FTP服务器后,一般要进行登录,在检验用户ID号和口令后,连接才得以建立,某些系统也允许用户进行匿名登录。与在所有的多用户系统中一样,对于同一目录或文件,不同的用户拥有不同的权限,所以在使用过程中,如果发现不能下载或上载某些文件时,一般是因为用户权限不够。
6.FTP文件传输方式
FTP可用多种格式传输文件,通常由系统决定,大多数系统(包括UNIX系统)只有两种模式:文本模式(ASCII)和二进制模式(BIN/IMAGE)。
文本传输器使用ASCII字符,并由回车键和换行符分开,而二进制不用转换或格式化就可传字符,二进制模式比文本模式更快,并且可以传输所有ASCII值,所以系统管理员一般将FTP设置成二进制模式。应注意在用FIP传输文件前,必须确保使用正确的传输模式,按文本模式传二进制文件必将导致错误。
7.FTP的可靠性问题
FTP建立在传输层TCP协议之上,TCP是面向连接的协议,负责保证数据从源计算机到目的计算机的传输。TCP采用校验、确认接收和超时重传等一系列措施提供可靠的传输,所以在传输过程中FTP程序如果没有提示错误,就无需担心传输问题。
8. ftp文件下载和上传命令
windows下ftp上传文件:
比如要把 D:\index.html上传至服务器的根目录中,可以键入:
ftp> put D:\index.html (回车)
当屏幕提示你已经传输完毕,可以键入相关命令查看:
ftp> dir (回车)
windows下ftp上传下载:
假设要把服务器\images目录中的所有.jpg文件下载至本机中,可以输入指令:
ftp> cd images(回车) [注:进入\images目录]
ftp> mget *.jpg
windows下ftp上传与下载工作完毕,键入bye中断连接。
ftp> bye(回车)
下面是一些常用的FTP命令:
1. open:与服务器相连接;
2. send(put):上传文件;
3. get:下载文件;
4. mget:下载多个文件;
5. cd:切换目录;
6. dir:查看当前目录下的文件;
7. del:删除文件;
8. bye:中断与服务器的连接。
如果想了解更多,可以键入
ftp> help (回车)
9. ftp上传下载目录的命令是什么
f t p 命 令 大 全
-------------------------------------------------------------
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作
系统下使用FTP,都会遇到大量的FTP内部命令,熟悉并灵活应用FTP的内部命令,可
以大大方便使用者,对于现在拨号上网的用户,如果ISP提供了shell可以使用noh
up,那么ftp将是你最省钱的上download方式,
ftp的命令行格式为:ftp -v -d -i -n -g[主机名]
-v 显示远程服务器的所有响应信息。
-d 使用调试方式。
-n 限制ftp的自动登录,即不使用.netrc文件。
-g 取消全局文件名。
ftp使用的内部命令如下(其中括号表示可选项):
1.![cmd[args]在本地机中执行交互shell、exit回到ftp环境,如!ls*.zip 。
2.¥ macro-ame[args]执行宏定义macro-name。
3.account[password]提供登录远程系统成功后访问系统资源所需的补充口令 。
4.appendlocal-file[remote-file]将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
5.ascii 使用ascii类型传输方式。
6.bell每个命令执行完毕后计算机响铃一次。
7.bin使用二进制文件传输方式。
8.bye退出ftp会话过程。
9.case在使用mget时,将远程主机文件名中的大写转为小写字母。
10.cd remote-dir 进入远程主机目录。
11.cp进入远程主机目录的父目录。
12.chmod modefile-name将远程主机文件file-name的存取方式设置为mode,如chmod 777 a.out。
13.close中断与远程服务器的ftp会话(与open对应)。
14.cr使用asscii方式传输文件时,将回车换行转换为回行。
15.delete remote-file删除远程主机文件。
16.debug[debug-value]设置调试方式,显示发送至远程主机的每条命令,如debup3,若 设为0,表示取消debug。
17.dir[remote-dir][local-file]显示远程主机目录,并将结果存入local-file。
18.disconnection同close。
19.form format将文件传输方式设置为format,缺省为file方式。
20.getremote-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[mode-name]将文件传输方式设置为mode-name,缺省为stream方式。
35.modtime file-name显示远程主机文件的最后修改时间。
36.mput local-file将多个文件传输至远程主机。
37.newerfile-name如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。
38.nlist[remote-dir][local-file]显示远程主机目录的文件清单,并存入本地硬盘的local-file。
39.nmap[inpatternoutpattern]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,
如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],则传输文件a1 .a2.a3时,文件名变为a1、a2,
该命令特别适用于远程主机为非U-NIX机的情况。
40.ntrans[inchars[outchars]设置文件名字符的翻译机制,如ntrans1R,则文件名LL L将变为RRR。
41.open host[port]建立指定ftp服务器连接,可指定连接端口。
42.passive进入被动传输方式。
43.prompt设置多个文件传输时的交互提示。
44.proxyftp-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.regetremote-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设置文件名唯一性存储,若文件存在,则在原文件后加后缀。
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,如typebinary,设置 二进制传输方式。
70.umask[newmask]将远程服务器的缺省umask设置为newmask,如umask 3。
71.useruser-name[password][account]向远程主机表明自己的身份,需要口令时,必须输入口令,如user anonymous my@email。
72.verbose同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.
73.?[cmd]同help。
那么如何应用这些命令提高效率呢?下面我举一个例子,如何利用fttp进行
后台下载,假设你的ISP给你提供了shell并且可以用nohup,你想由fttp.downlo
ad.com/pub/internet/下载一个30M的程序aaa.zip具体步骤如下:
1.用notepad做一个文件如aaa1内容如下
open ftp.dwonload.com user an onymous [email protected]
cd /pub/internet/ i get aaa.zip close bye
2.拨号登录到你的ISP上。
用telnet 或netterm登录到shell,一般都在你的home子目录里bbs~/
3.用fttp上传aaa1到ISP服务器你的子目录。
4. 执行nohup fttp -invd aaa2& 这样这个进程就被放在ISP服务器的后台进行了,
如果你想知道情况如何,可以more aaa2就可以知道情况如何了。这时你可以断线了或干点别的,
估计时间到了(time约=30M/(33.6K/9)s)拨号上去,more aaa2如果显示成功下载aaa.zip,
就表示aaa.zip已经被下载到ISP的服务器上了,你再由ISP的服务器拉回来就相当与点对点了,
记得下载完成后del掉你的文件(aaa.zip),免得浪费ISP资源,它会关掉shell的。
10. FTP命令下载FTP服务器文件问题
命令语法不对。ftp命令和操作系统命令不能混用。批处理文件执行的是操作系统的命令,不识别ftp shell。
先把ftp所有命令写入一个文本文件例如d:\temp\f.txt
如果需要用户名密码验证,则直接把用户名密码写在文本前两行,以后跟其他命令。
创建批处理文件,写入命令:
ftp -s:(跟文本文件全路径+文件名扩展名) (服务器地址)
执行这个批处理文件即可,还可将批处理添加到任务计划更显自动化。
一个完整例子:
设D盘有两个文件夹:d:\MyAppfiles和d:\Music
在d:\MyAppfiles文件夹下创建文本文件getmusic.txt和批处理文件getmusic.bat
getmusic.txt内容如下(括号中是说明部分,在文本文件中不写):
lover (用户名)
passwd (密码)
cd music (进入服务器上的Music文件夹)
mget *.mp3
bye
getmusic.bat内容如下:
cd\music
ftp -s:d:\MyAppfiles\getmusic.txt 192.168.0.16
执行getmusic.bat,即可把服务器192.168.0.16 ftp站点下Music文件下的mp3文件下载到本地d:\Music文件夹下