FTP命令是Internet用户使用最频繁的命令之一,熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。如果你想学习使用进行后台FTP下载,那么就必须学习FTP指令。
' s# a4 ]$ b* A4 w& E4 L, o% m2 z! h. T) `4 `
FTP的命令行格式为: 3 H' h9 R; \: q1 Q: s k( \
ftp -v -d -i -n -g [主机名] ,其中
0 O3 a' `# u1 Y% i% ^4 u6 [- r1 z3 M/ f6 F
-v 显示远程服务器的所有响应信息;
I: j) ?. Z* w6 i( Z# p2 L
5 z, E; m" C m6 b1 V q-n 限制ftp的自动登录,即不使用;.n etrc文件;2 v# [1 M1 C# m" T$ S
8 w) j+ Z6 v" n t; [/ k-d 使用调试方式;9 t/ ]/ M J; r2 V9 I/ w/ ^% O
+ `% Y9 E! A0 M( i. z8 x# F5 V
-g 取消全局文件名。
" _7 x) k& M" O+ _. P. \
. I7 ~: R9 z y7 \! T B/ v- ?/ w1 M
1 r' b! \( ?4 e3 XFTP使用的内部命令如下(中括号表示可选项):
1 q( P/ ~1 L8 _: S; v( u7 I( J
0 h* X/ B8 A {+ C* H7 M4 x1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip
% q8 x. Y. K: b2 t0 S( k' v4 T0 Q" _5 }. |# x7 L+ q
2.$ macro-ame[args]: 执行宏定义macro-name。6 m& X" Z& _" v% J* Q- n3 M
0 N1 t* X) v$ f, n4 d3.account[password]: 提供登录远程系统成功后访问系统资源所需的补充口令。: p" ?. D! ^$ Z2 w* v+ z( p5 Y
( j( n6 a1 B' I1 C% Q6 Y* X @3 [, a4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
+ @ n& H/ T5 J6 |7 d: V7 Y% e" G0 p: o# ]3 y5 ~4 Z, X v
5.ascii:使用ascii类型传输方式。) X- @+ {6 S) }3 ~* O7 |
6.bell:每个命令执行完毕后计算机响铃一次。
; `* }: O- k5 y/ ]( }' N# O8 i( O# L) S( ~
7.bin:使用二进制文件传输方式。" u# h3 x" F& G- o3 F7 x3 q
8.bye:退出ftp会话过程。
6 Z3 o9 t: C/ b9 k2 n; p
- Y, G" ?! ]7 \; i6 f. `3 L8 |9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。
M7 A, M% M2 b2 B* ~! D& J i) N; L* W' m
10.cd remote-dir:进入远程主机目录。+ L) z* U( I: U* s. v
" G# P5 T) y* B
11.cdup:进入远程主机目录的父目录。) A" M& y# j2 x% }8 E. C
6 Z; o) b" Q5 r9 j' K12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。5 @$ G2 X- A' m+ f- j" j
4 K2 ^, P/ L2 K; N/ u; r. X
13.close:中断与远程服务器的ftp会话(与open对应)。# S- R/ X+ t4 r" K+ E) d
4 p) f \: H. n$ r8 r( `14.cr:使用asscii方式传输文件时,将回车换行转换为回行。! \: I) `! a" O% S
7 A0 ^' B4 l8 [) f C15.delete remote-file:删除远程主机文件。9 O- X | I" Y3 z/ d6 K5 |" f
0 k5 _( s: t- g8 d5 F16.debug[debug-value]:设置调试方式, 显示发送至远程主机的每条命令,如:deb up 3,若设为0,表示取消debug。: M& V9 z; u7 [0 ?1 [7 b; t- q2 F
' P5 e: r8 y! D' T* X: c- i. Y
17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件
% P* L* i0 m4 n: s: ^18.disconnection:同close。$ i( A+ q6 n5 H: M {9 y; O' `
% ~, s& u1 h! P* x& X19.form format:将文件传输方式设置为format,缺省为file方式。8 F7 t0 h" F' g# [
" C0 v9 v( \7 {( m* g) G& u( u9 Y20.get remote-file[local-file]: 将远程主机的文件remote-file传至本地硬盘的local-file。
; U& p- O) V8 _/ ~ g$ n
2 |% _2 O* { \4 U21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
3 f0 e2 b( [" Z* D5 g. [8 f
* o) z. l" H! u. G# Q22.hash:每传输1024字节,显示一个hash符号(#)。: @- I6 @0 Q$ ]* c
- M# b0 R0 ]' `: N3 r
23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。8 h' ?+ S0 |+ C# w8 s9 f
24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。5 A' J1 V/ F& T# h# k
9 e) h) Z7 |- p; h9 ~25.image:设置二进制传输方式(同binary)。. J% _4 r5 T. r6 `* L" I
8 y/ l* Q% N8 x- \26.lcd[dir]:将本地工作目录切换至dir。! K( t: ]( M* E* y" k6 R& w5 o! d
3 M6 ? G6 [; S+ b3 X0 ?/ n; z* ~ J
27.ls[remote-dir][local-file]:显示远程目录remote-dir, 并存入本地文件local-file。7 `6 ?2 t* _. \4 d8 S0 f g2 n* I
7 f' `' k, d$ {8 E, z1 p8 H+ L3 X28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。1 |3 i2 j1 N6 o+ O: n# q2 z
29.mdelete[remote-file]:删除远程主机文件。 h. J! d2 t3 H
30.mdir remote-files local-file:与dir类似,但可指定多个远程文件,如 :mdir *.o.*.zipoutfile 。
9 \& r: _7 i# ~7 T4 t8 b. s; B( E) T. v5 f: e, q
31.mget remote-files:传输多个远程文件。
( t+ A& V4 x {$ q/ x7 w2 e% L. y* u+ t; C% g0 o
32.mkdir dir-name:在远程主机中建一目录。4 S( @: w0 m- P8 g, a3 J6 L
/ ` m# H/ R! O8 U8 g! k
33.mls remote-file local-file:同nlist,但可指定多个文件名。
" B( @6 W/ r$ h$ l Z5 m s34.mode[modename]:将文件传输方式设置为modename, 缺省为stream方式。
: f: C$ n& K4 `: _: N8 s# K( }" N# H35.modtime file-name:显示远程主机文件的最后修改时间。
% p7 c' c8 Y1 V4 U5 B; Z! J, F, ~) F2 S1 _2 x9 b. a# `
36.mput local-file:将多个文件传输至远程主机。
( W% {' m/ Q, T0 j2 `9 E j# z. `6 l, d1 T& Z' _4 I
37.newer file-name: 如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。
7 g& L3 U9 J3 u8 K# }38.nlist[remote-dir][local-file]:显示远程主机目录的文件清单,并存入本地硬盘的local-file。% |0 t; T. t" Q* R8 A2 v: _
39.nmap[inpattern outpattern]:设置文件名映射机制, 使得文件传输时,文件中的某些字符相互转换, 如:nmap $1.$2.$3[$1,$2].[$2,$3],则传输文件a1.a2.a3时,文件名变为a1,a2。 该命令特别适用于远程主机为非UNIX机的情况。
& Y3 D/ N# N* W* U3 o" G40.ntrans[inchars[outchars]]:设置文件名字符的翻译机制,如ntrans1R,则文件名LLL将变为RRR。; n) q" ?/ d. Y& l T ]
- e* w& I. {7 j/ |
41.open host[port]:建立指定ftp服务器连接,可指定连接端口。
+ n- j5 m# S, P4 f0 C7 M8 W+ |( L& n$ N% ?: o- v* A
42.passive:进入被动传输方式。$ Y9 J3 d9 s m$ B! F/ D
- ]' I0 `7 A0 E2 j
43.prompt:设置多个文件传输时的交互提示。5 Q7 q6 b/ N- D( _$ @
! Y# W* E l( u. p7 V+ U( ?- r4 U# h" b
44.proxy ftp-cmd:在次要控制连接中,执行一条ftp命令, 该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。3 d/ u! F# {3 R& H. e; L1 W {& ~
45.put local-file[remote-file]:将本地文件local-file传送至远程主机。+ }! w# i$ c2 | _$ @. u" \
46.pwd:显示远程主机的当前工作目录。2 t5 v- \0 Q3 Z' a* p6 _
5 X' q7 l3 E0 ^" Z4 T2 P
47.quit:同bye,退出ftp会话。
" ~- F! v: }7 X1 d! `2 b# b- r+ e1 m! q i8 h
48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst.4 Y, L- O, H. ~+ t4 E
49.recv remote-file[local-file]:同get。/ O3 f7 q$ q7 b% N; D5 U5 x
; B! y5 l" [( p w& ^' a* m* k50.reget remote-file[local-file]:类似于get, 但若local-file存在,则从上次传输中断处续传。0 E0 {* _% @/ z
" ~* M; O# h4 O! b7 F51.rhelp[cmd-name]:请求获得远程主机的帮助。; I& K# U9 `1 ]( t. z+ a
/ W9 s1 _+ T: ^% F3 d- e
52.rstatus[file-name]:若未指定文件名,则显示远程主机的状态, 否则显示文件状态。3 `9 d, a1 j7 k1 t: L
* s4 m7 H1 y# x( H- k5 r53.rename[from][to]:更改远程主机文件名。/ f- O3 m& o) u8 S; I
( m( G6 y S5 b% G1 G$ l/ E
54.reset:清除回答队列。
: Z# V4 j3 f- m) C2 }6 x, D3 L1 d+ J% o5 d( w9 m
55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。
* q; [' `! i: m: s: } @56.rmdir dir-name:删除远程主机目录。 _& m& Z$ o5 _8 O4 q4 D% ~' g- W9 ?) l9 S
: |& |1 M4 s: Z* g
57.runique:设置文件名只一性存储,若文件存在,则在原文件后加后缀.1, .2等。
9 W9 N" ~9 s& C- n, T9 t, B/ \
9 {/ I( c5 `# I; j$ E58.send local-file[remote-file]:同put。
1 v, c q* Y, F; @) |( D% W
4 Y. W: N; t2 [$ _; r' l59.sendport:设置PORT命令的使用。/ b; S( M* T4 G. q# h9 ^1 [6 d
9 z+ F& P: R8 T
60.site arg1,arg2...:将参数作为SITE命令逐字发送至远程ftp主机。7 S! {$ j+ L% @; w9 B- u3 v
% Z2 V0 d1 o+ s2 t
61.size file-name:显示远程主机文件大小,如:site idle 7200。
5 S7 @: `1 S& t4 `" N; a k" u' Y
62.status:显示当前ftp状态。
4 q* L3 S5 `+ V4 w4 N4 q2 l3 I( Z
& [8 O& l. Y) S* g; [63.struct[struct-name]:将文件传输结构设置为struct-name, 缺省时使用stream结构。
5 _7 a7 m: G: {% y9 Y5 |$ ?4 j: L, n$ w* ]
64.sunique:将远程主机文件名存储设置为只一(与runique对应)。1 X W' h, |, U
$ t/ K" z' k. f) T65.system:显示远程主机的操作系统类型。* ?* c6 p, t1 s4 p0 b
0 |% @" [. ]1 v& c1 p; k* r" d- f
66.tenex:将文件传输类型设置为TENEX机的所需的类型。
8 v" u& c( W. M. ^
' d- F/ L% o# z& }, Z" N* G67.tick:设置传输时的字节计数器。) n8 n5 H; ~. f! [" l9 V
/ Q; N8 J6 m+ T, V' ~! k1 a68.trace:设置包跟踪。: x4 t5 e) w+ T' R P( v
( ~6 V1 ~/ r/ D: H69.type[type-name]:设置文件传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。9 V0 {/ h/ e% v/ W: R
5 d/ Y9 z% c- l. s# s7 ~; w& }
70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 3
. t2 \1 L: h0 ~2 f2 k% K. g [; G5 m8 P2 _* L/ k5 C
71.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。
3 D% a) I. ]8 R0 }# K& _72.verbose:同命令行的-v参数,即设置详尽报告方式,ftp 服务器的所有响 应都将显示给用户,缺省为on./ M9 L% r2 d7 O$ r/ L8 C7 n: z
2 G7 u' J# g: T73.?[cmd]:同help.
) D" m% Q) W4 Y q' s |