FTP命令是Internet用户使用最频繁的命令之一,熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。如果你想学习使用进行后台FTP下载,那么就必须学习FTP指令。- |# z; `1 K; V0 ^* H+ @
( w7 E) x) [0 y1 }1 \2 OFTP的命令行格式为:
( z/ f+ g& s& E: M* ^7 Gftp -v -d -i -n -g [主机名] ,其中
! K* I V" o+ ?
: R/ |* g* ^ y/ g' v1 ` f-v 显示远程服务器的所有响应信息; w7 [ C0 W* [7 `' P
2 h3 a( W. {3 N$ @
-n 限制ftp的自动登录,即不使用;.n etrc文件;
5 v% y% g$ f9 S P+ J: J0 P0 i9 x! B+ M% W3 m
-d 使用调试方式;- X1 C) p$ T" I! ?8 W* e
( E2 @8 x# W) \7 [7 @9 |
-g 取消全局文件名。* g" R; ~' J* l5 z( q# U1 h
$ j- |( h' z' j, r) {6 n2 _
: X: m/ u' b9 F, J& i4 ]+ Z
FTP使用的内部命令如下(中括号表示可选项):8 w/ g* N% }& m/ a8 s1 h- b
2 K* K$ `; K/ f) |% X* G0 E& ?) w
1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip0 s/ c/ T( A5 x, U" C" x3 f
7 O% B" U- N) ~; }
2.$ macro-ame[args]: 执行宏定义macro-name。
* {# p. L+ j1 r) t" ?! E" F! i4 }' k9 L2 h& w' y
3.account[password]: 提供登录远程系统成功后访问系统资源所需的补充口令。
, q& P9 w$ x' w9 D1 s x" v
; x9 Q' ~) r- N' R3 @3 K/ a$ R$ ?% [9 e4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
2 v, c& {- L* W: l5 d- Y& t8 ^# b) z9 j/ M2 d) p z
5.ascii:使用ascii类型传输方式。
' A" S, A9 w5 Z) [6.bell:每个命令执行完毕后计算机响铃一次。6 K! T6 ~ ^" G2 `: c- Q' Y! Y. m1 f
0 H' S A% U3 E( [
7.bin:使用二进制文件传输方式。; Z/ s, x6 h ~8 l
8.bye:退出ftp会话过程。
5 q% v2 b7 p2 K, P5 s5 y
# B6 O/ N$ i; Z2 I `: B& ~* R5 Y9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。
8 V7 I+ O* u/ H
, h8 U/ L& V3 J# [5 \& [10.cd remote-dir:进入远程主机目录。0 l/ Q/ P6 M# c
; ]; J8 ]) @2 l! U1 V6 A3 Z11.cdup:进入远程主机目录的父目录。
& `$ v$ C) e; n7 {% T: \7 z; W" S) r$ c* t6 H# v: f
12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。
$ x# f( t4 [& w
( l4 N- O& {. H. ~2 y; `13.close:中断与远程服务器的ftp会话(与open对应)。8 T( Y$ z V, z* v# g+ L
c2 }( C: q2 M
14.cr:使用asscii方式传输文件时,将回车换行转换为回行。
' K8 ]% v0 Y, a( b6 s$ ?8 q/ |
5 C9 w6 N4 D0 ]8 z6 w! y15.delete remote-file:删除远程主机文件。
0 y) {# d6 o, ]/ |4 b9 W/ O* M
; b8 _9 R- B4 \' ]4 z5 M16.debug[debug-value]:设置调试方式, 显示发送至远程主机的每条命令,如:deb up 3,若设为0,表示取消debug。
- U% K9 N: t$ V$ q2 k( n
* o# M1 E# j$ p3 w17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件
: c- c+ g' i# p2 w( J0 w4 q18.disconnection:同close。
: L( P+ ^/ _2 W3 ~ W" p i- N [, g5 X0 ~- m- V: h
19.form format:将文件传输方式设置为format,缺省为file方式。
* a, i% @/ E" K( \
1 k$ ^3 a& U# v# o, M2 y, [20.get remote-file[local-file]: 将远程主机的文件remote-file传至本地硬盘的local-file。
$ k/ u$ s3 a! u! y; z7 i5 S( u0 _# R( u5 P8 A5 M9 @
21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
7 z" i; ]& m: R3 j2 P3 T' {+ |3 f6 _* L
22.hash:每传输1024字节,显示一个hash符号(#)。
m E2 x" Y P" {/ Y) C- I. E
23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。, h A# ~5 U' M1 l( [3 L8 k2 Q: o
24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。' E0 X. w5 T! j G2 f6 x5 S
" t4 D$ Y2 G/ b! z5 V7 C7 _
25.image:设置二进制传输方式(同binary)。! U& z. e# ~2 X0 L) k1 E7 A' i( m
7 G7 C/ v) ~- i6 v& {26.lcd[dir]:将本地工作目录切换至dir。" _: F% B. d! t' y/ U1 B
$ O- w# s7 q. \27.ls[remote-dir][local-file]:显示远程目录remote-dir, 并存入本地文件local-file。
1 n( O( i0 J; }3 W6 W, l
$ Q; u: n) M$ u28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。* l/ z6 i6 L/ n# t. a3 `
29.mdelete[remote-file]:删除远程主机文件。
* i; k0 q7 K; h0 R# L( L, N30.mdir remote-files local-file:与dir类似,但可指定多个远程文件,如 :mdir *.o.*.zipoutfile 。
7 n8 q, }5 a, p# F6 [5 i, _5 \! @3 l+ I; f5 x" ?( W
31.mget remote-files:传输多个远程文件。% }+ B+ I& z9 I; y) A
3 K D' j! D- u& k) O& P2 i" \
32.mkdir dir-name:在远程主机中建一目录。& c$ Z! s* O8 W" Q C
. d4 ?! Q+ O' z3 w U33.mls remote-file local-file:同nlist,但可指定多个文件名。9 i9 d/ _* V* N o& z# H+ a
34.mode[modename]:将文件传输方式设置为modename, 缺省为stream方式。
( `: ~$ X/ x* z8 R W35.modtime file-name:显示远程主机文件的最后修改时间。# M' X. Q6 d; e5 e5 u: |3 u
; X" x" e, [" _: z, q7 ?
36.mput local-file:将多个文件传输至远程主机。% D3 `) }- p' B( z+ B O; |
* _! M" E) ^$ @( @37.newer file-name: 如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。' J( X/ {& a" A& _1 ^! O6 ^
38.nlist[remote-dir][local-file]:显示远程主机目录的文件清单,并存入本地硬盘的local-file。9 v5 k3 j2 Z2 s% L9 R
39.nmap[inpattern outpattern]:设置文件名映射机制, 使得文件传输时,文件中的某些字符相互转换, 如:nmap $1.$2.$3[$1,$2].[$2,$3],则传输文件a1.a2.a3时,文件名变为a1,a2。 该命令特别适用于远程主机为非UNIX机的情况。& E3 }; N' M+ N$ n' F8 R
40.ntrans[inchars[outchars]]:设置文件名字符的翻译机制,如ntrans1R,则文件名LLL将变为RRR。& \* ]% c3 Z. F4 t% ~1 w
Z9 [8 W& i; Z4 P41.open host[port]:建立指定ftp服务器连接,可指定连接端口。
( N% S0 p0 R5 I" W/ x: [9 U/ `- V* f8 f+ M$ }( T W5 b2 Q
42.passive:进入被动传输方式。
: l$ V2 q6 g9 H( p3 `3 A, @ n9 S) u h% ~. g* n. x4 x2 h- l
43.prompt:设置多个文件传输时的交互提示。+ v9 y; K P7 m# c% F2 U# w- A
. d9 a, \+ {& q# R& E! I1 _1 b z7 r44.proxy ftp-cmd:在次要控制连接中,执行一条ftp命令, 该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。. U3 M; G0 o6 J* A% ?) J5 ], R
45.put local-file[remote-file]:将本地文件local-file传送至远程主机。
5 O& p, F( w. S& y# m46.pwd:显示远程主机的当前工作目录。
4 ?) K, f5 S$ |6 i$ N' @( C. _: s
& W$ }+ W2 t2 p* E2 [47.quit:同bye,退出ftp会话。1 T' v$ d7 L7 V) \ Q3 [
. u0 z4 d% e4 q8 I6 [8 w+ b, Z1 k48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst.
( t1 z0 Q* V! Z; _& o% z4 w5 [49.recv remote-file[local-file]:同get。
$ _3 u7 S! q; ?: h& x9 n3 P5 D5 B4 X3 ^) X
50.reget remote-file[local-file]:类似于get, 但若local-file存在,则从上次传输中断处续传。
2 p3 _- L" \; E7 h% F+ a2 t% `) b7 a! a
51.rhelp[cmd-name]:请求获得远程主机的帮助。
* V4 } { e" }, q& j: Z/ p+ K1 I9 T( m9 T0 d f
52.rstatus[file-name]:若未指定文件名,则显示远程主机的状态, 否则显示文件状态。
* ^2 e B/ K2 b) d
( w, h- ?2 }; J6 {# Z53.rename[from][to]:更改远程主机文件名。% _7 N6 ^7 ^9 W( R4 q' L0 e
) v. D4 w/ j+ {3 ?/ j
54.reset:清除回答队列。
3 K* _+ r7 e" |0 K! ^8 U
1 W4 A* h- K6 z3 a55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。4 b) C* R; d" \8 E0 n) D4 k
56.rmdir dir-name:删除远程主机目录。
% x! P6 L, ]( E5 u
9 ~! E5 p. v4 I# [, d57.runique:设置文件名只一性存储,若文件存在,则在原文件后加后缀.1, .2等。
$ p2 C8 N3 c7 n$ e! T' k; K# r& E! t% @
58.send local-file[remote-file]:同put。
' i$ T4 ~$ p8 t7 D
6 x2 C' b, ?8 V- _; I" p9 `59.sendport:设置PORT命令的使用。1 f7 ^' _: @ [- d2 l6 [
7 P u% K+ y( X& A" d2 m60.site arg1,arg2...:将参数作为SITE命令逐字发送至远程ftp主机。
1 W) ~4 H- o: R+ ~& `1 t+ a" x! i8 m
61.size file-name:显示远程主机文件大小,如:site idle 7200。 r/ ]5 _' |3 S; p, }8 B
/ Y. R, [& l# \62.status:显示当前ftp状态。" r. ]$ I+ b k& E1 x& v
$ I! f: r0 H. q8 G. D7 Z
63.struct[struct-name]:将文件传输结构设置为struct-name, 缺省时使用stream结构。
8 P6 V& t; h8 l# Y5 }6 @/ m& I8 }1 ]" s
64.sunique:将远程主机文件名存储设置为只一(与runique对应)。# K2 J+ i0 b" R* }! ]5 V7 B
5 p N3 R! y8 g4 S8 u5 j65.system:显示远程主机的操作系统类型。3 c0 L$ ?) J1 f! X# e- b- X3 N
$ i7 [& R& Y, M
66.tenex:将文件传输类型设置为TENEX机的所需的类型。; W M1 h' Q3 m
1 o" t6 \! F D
67.tick:设置传输时的字节计数器。
% b1 R7 U6 U( M5 {" c/ }! V7 w T1 @. o* R
68.trace:设置包跟踪。+ {, M8 ~+ Y; e$ _ i; h
& L1 A" t+ ]& |0 b8 j0 d7 J* C69.type[type-name]:设置文件传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。. G% j4 K% ^, o: X5 V
0 j1 ]; j+ K% {: R6 H3 C4 }70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 3% }6 _" _( j0 i) Q
9 J) B A5 E" B
71.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。
' @8 ^# `( z* A72.verbose:同命令行的-v参数,即设置详尽报告方式,ftp 服务器的所有响 应都将显示给用户,缺省为on.1 G, D+ a ]7 w+ n. N8 D
& V O+ }8 P2 l73.?[cmd]:同help.6 A' `" P- w; y
|