ftp命令大全 % d7 e) N4 S4 B7 _+ ^. h
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作
, D X/ q! p& t+ K& o+ I$ ~/ N7 L系统下使用FTP,都会遇到大量的FTP内部命令,熟悉并灵活应用FTP的内部命令,可 - y! ]3 I5 z( F/ P0 X/ Q
以大大方便使用者,对于现在拨号上网的用户,如果ISP提供了shell可以使用noh
+ E$ J- h1 w( r- c/ oup,那么ftp将是你最省钱的上download方式,' i- L Q) l: ~! b. H9 v; r; b. u, \
ftp的命令行格式为:ftp -v -d -i -n -g[主机名] ( j. ~1 p& b9 P
-v 显示远程服务器的所有响应信息。 ( f1 z" Q! M k: |3 k2 }9 b) i7 C/ d
-d 使用调试方式。
' p/ T" o! G+ o-n 限制ftp的自动登录,即不使用.netrc文件。 6 \: b" a7 Y- o( A/ z
-g 取消全局文件名。 % S3 W: {0 A+ r
* h0 r! F8 v- S& Y* I9 b! L: @ftp使用的内部命令如下(其中括号表示可选项): ' s2 ]! @% h# ^
1.![cmd[args]在本地机中执行交互shell、exit回到ftp环境,如!ls*.zip 。
2 V" B4 Q7 n! u. z7 Q 2.¥ macro-ame[args]执行宏定义macro-name。
: Q0 s! P# ?+ m' c: S$ E3 T 3.account[password]提供登录远程系统成功后访问系统资源所需的补充口令 。
! T$ a# F t# H6 l4 g( b 4.appendlocal-file[remote-file]将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 ( T z' u$ m1 d$ v. F
5.ascii 使用ascii类型传输方式。 3 m; ?3 E9 W- o; r( {/ ]' D
6.bell每个命令执行完毕后计算机响铃一次。
- n2 p1 q8 C+ y 7.bin使用二进制文件传输方式。 ( v: {8 |6 i) f8 a& {9 D
8.bye退出ftp会话过程。 * ]( q( _* e& h( Q: c3 s% W
9.case在使用mget时,将远程主机文件名中的大写转为小写字母。 # u( M' @* B5 q' a( C
10.cd remote-dir 进入远程主机目录。 , j: x+ J3 E# p% a' F7 v% ]
11.cdup进入远程主机目录的父目录。 2 r/ V' d* A2 y( p
12.chmod modefile-name将远程主机文件file-name的存取方式设置为mode,如chmod 777 a.out。
4 r% C& H8 a% D. U6 C8 [5 D 13.close中断与远程服务器的ftp会话(与open对应)。 : b3 s E; ^6 y) ~ y
14.cr使用asscii方式传输文件时,将回车换行转换为回行。
. b* T% }; O e5 Q 15.delete remote-file删除远程主机文件。
* F' _# ~ q) ]: S0 I 16.debug[debug-value]设置调试方式,显示发送至远程主机的每条命令,如debup3,若 设为0,表示取消debug。
. m# S2 Q: [7 X. X7 \8 o 17.dir[remote-dir][local-file]显示远程主机目录,并将结果存入local-file。
6 h% z8 d3 s8 v7 e$ Z9 ] 18.disconnection同close。
# I/ O8 g Z+ s3 f/ P+ ] 19.form format将文件传输方式设置为format,缺省为file方式。 - `2 B: h' B& N) ^! V/ M# Q0 _( Y
20.getremote-file[local-file]将远程主机的文件remote-file传至本地硬盘的local-file。 ( w8 K, M) M1 T# L" l3 W3 w: w
21.glob设置mdelete、mget、mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
- f: n7 z; `& \ v( |0 c0 x 22.hash每传输1024字节,显示一个hash符号(#)。 / u) I4 e; \- j/ O# S1 J$ H* q9 x2 ^
23.help[cmd]显示ftp内部命令cmd的帮助信息,如help get。 ) U7 H m U% `, k
24.idle[seconds]将远程服务器的休眠计时器设为[seconds]秒。
2 O1 _- C |) b5 _: O4 [/ A/ x 25.image设置二进制传输方式(同binary)
4 A$ F& F& o9 h2 t4 N5 a: N( [+ b 26.lcd[dir]将本地工作目录切换至dir。
, |9 ^6 I9 T c" C$ B4 G 27.ls[remote-dir][local-file]显示远程目录remote-dir,并存入本地local-file。 : o) G8 @4 W* e0 R; q
28.macdef macro-name定义一个宏,遇到macdef下的空行时,宏定义结束。 - W& v2 i, t# R/ A- y* c! w
29.mdelete[remote-file]删除远程主机文件。
% H* Y, M3 M$ |" u 30.mdir remote-files local-file与dir类似,但可指定多个远程文件,如mdir*.o.*. zipoutfile。 ( q, J9 Y# W0 G$ J$ N/ [; ^: L1 S
31.mget remote-files传输多个远程文件。 # Q/ `$ V0 A: Z; P
32.mkdir dir-name 在远程主机中建一目录。 3 K; |, q$ Q/ P6 n! A
33.mls remote-file local-file同nlist,但可指定多个文件名。
# q2 L- C; R/ F2 X0 B! J 34.mode[mode-name]将文件传输方式设置为mode-name,缺省为stream方式。
- F# _9 {/ ]9 ~ 35.modtime file-name显示远程主机文件的最后修改时间。
& I" _1 f3 W/ Y9 ^. D5 N: u 36.mput local-file将多个文件传输至远程主机。
2 v% D0 c7 g0 W9 R9 w2 E$ R1 @ 37.newerfile-name如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。 / t( h( J5 h" m1 F
38.nlist[remote-dir][local-file]显示远程主机目录的文件清单,并存入本地硬盘的local-file。
+ H- f$ i' X) b 39.nmap[inpatternoutpattern]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,
9 Y3 ~, f& M+ Z \2 d# q8 X" N如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],则传输文件a1 .a2.a3时,文件名变为a1、a2,
3 ~( Z2 u7 ^5 M7 b该命令特别适用于远程主机为非U-NIX机的情况。
2 }2 b! }% b5 u9 r6 Q; o0 z40.ntrans[inchars[outchars]设置文件名字符的翻译机制,如ntrans1R,则文件名LL L将变为RRR。
~& I" Z- H2 Y d* M 41.open host[port]建立指定ftp服务器连接,可指定连接端口。
; W, G! H5 ]3 i% q4 n. {42.passive进入被动传输方式。 # D) ~. w, ? G0 B1 O
43.prompt设置多个文件传输时的交互提示。
0 J$ y+ {! j( r0 J# J 44.proxyftp-cmd在次要控制连接中,执行一条ftp命令,该命令允许连接两个ftp服务器,以在两个服务器间传输文件。! |5 s" S3 [4 R' `7 C/ J
第一条ftp命令必须为open,以首先建立两个服务器间的连接。 : f3 v6 B. H: @
45.put local-file[remote-file]将本地文件local-file传送至远程主机。 1 U/ H$ R5 k2 W8 p
46.pwd显示远程主机的当前工作目录。
( a; A" P1 _, k$ e0 t8 \ 47.quit同bye,退出ftp会话。 1 N8 R5 F: h% S$ }" Y
48.quote arg1,arg2……将参数逐字发至远程ftp服务器,如quote syst。
% M* J: J7 G4 W2 O# a3 p+ c 49.recv remote-file[local-file]同get。
7 B' ~- U* \9 L$ B 50.regetremote-file[local-file]类似于get,但若local-file存在,则从上次传输中断处续传。
# R, V" ?; l. |, F 51.rhelp[cmd-name]请求获得远程主机的帮助。 ' G/ z B) w% N/ f+ X/ ?
52.rstatus[file-name]若未指定文件名,则显示远程主机的状态,否则显示文件状态。
1 v. ?. b* L. @ 53.rename[from][to]更改远程主机文件名。
- S7 P* @7 M- c2 v% V0 G$ I& o n54.reset清除回答队列。
% I4 i l$ S/ P4 E$ G, J 55.restart marker从指定的标志marker处,重新开始get或put,如restart 130。 ( K% a( \! G3 C% | B( t
56.rmdir dir-name删除远程主机目录。
) L2 m, _% e3 ]% G8 W3 S, f2 { 57.runique设置文件名唯一性存储,若文件存在,则在原文件后加后缀。
" `, Z% T) f f; b5 D; R 58.send local-file[remote-file]同put。
3 _! f7 ^. N9 M# N f( C 59.sendport设置PORT命令的使用。 / N4 B4 ]6 y6 G" J, B
60.site arg1,arg2……将参数作为SITE命令逐字发送至远程ftp主机。 ' A, N6 S* J1 k+ ^3 K: ?
61.size file-name显示远程主机文件大小,如site idle 7200。 7 k5 b# p* ~; G) ^- e) Y r
62.status显示当前ftp状态。
+ J* q$ [6 I) \+ c( n& j 63.struct[struct-name]将文件传输结构设置为struct-name,缺省时使用stream结构。
" Z% p& u" }) q2 _7 \/ F64.sunique将远程主机文件名存储设置为唯一(与runique对应)。 8 @7 Q) ]. O+ Y
65.system显示远程主机的操作系统类型。
! T T# d$ R/ D" h6 \ 66.tenex将文件传输类型设置为TENEX机所需的类型。
8 A" q; F# _# S% j: Q9 g3 d% T 67.tick设置传输时的字节计数器。 1 Z. \3 X. u" e& q% C' k( q
68.trace设置包跟踪。 ; a3 u6 m4 ~4 |! Q" _
69.type[type-name]设置文件传输类型为type-name,缺省为ascii,如typebinary,设置 二进制传输方式。 ! _& `" [" E" @- \$ J/ l
70.umask[newmask]将远程服务器的缺省umask设置为newmask,如umask 3。 + G8 i0 U6 x3 d
71.useruser-name[password][account]向远程主机表明自己的身份,需要口令时,必须输入口令,如user anonymous my@email。
1 a$ K8 i4 a% R! L0 z; ? 72.verbose同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on. 2 ?/ ]+ @' X6 c3 V a, c
73.?[cmd]同help。 $ L, l1 Q- s4 M# S
那么如何应用这些命令提高效率呢?下面我举一个例子,如何利用fttp进行
; u; b7 y1 u0 `后台下载,假设你的ISP给你提供了shell并且可以用nohup,你想由fttp.downlo
1 w+ X9 z0 ]/ }ad.com/pub/internet/下载一个30M的程序aaa.zip具体步骤如下: - @2 ?$ N+ a, j: U$ D
1.用notepad做一个文件如aaa1内容如下
/ t& f# U' Y$ s3 j+ g. |$ S# Z open ftp.dwonload.com user an onymous zyz@cenpok.net
# ^. f9 @, k- s. ^7 d2 D1 fcd /pub/internet/ i get aaa.zip close bye ) y5 Q8 {. I1 k! p* v7 ]# T
2.拨号登录到你的ISP上。% D( o( n3 R6 |6 j2 |8 I8 m4 W
用telnet 或netterm登录到shell,一般都在你的home子目录里bbs~/
" h7 T. S" {: }6 k3.用fttp上传aaa1到ISP服务器你的子目录。 ' N- x8 m; Y9 t5 A- r7 C1 C* j
4. 执行nohup fttp -invd aaa2& 这样这个进程就被放在ISP服务器的后台进行了,+ ?+ t' P( [& g$ k( ~- F
如果你想知道情况如何,可以more aaa2就可以知道情况如何了。这时你可以断线了或干点别的,
9 o0 S+ ^8 k8 v" r5 r估计时间到了(time约=30M/(33.6K/9)s)拨号上去,more aaa2如果显示成功下载aaa.zip,
3 R9 v" ^: K0 z( l7 N, W就表示aaa.zip已经被下载到ISP的服务器上了,你再由ISP的服务器拉回来就相当与点对点了,: }) W- j% M2 m( q
记得下载完成后del掉你的文件(aaa.zip),免得浪费ISP资源,它会关掉shell的。
1 V* c3 C8 U6 |* |' B ~4 d$ v |