|
|
ftp的命令行格式为:ftp -v -d -i -n -g[主机名] ~" r' Q9 Y$ q; J4 M
9 V/ O2 [1 T" i" x, X9 K2 }" v -v 显示远程服务器的所有响应信息。
0 h) {2 D7 Y; K2 g3 V( h* F2 K3 U -d 使用调试方式。
! f# E* v- v. [7 U, D+ W -n 限制ftp的自动登录,即不使用.netrc文件。
- y2 n+ U1 V1 g" W2 U -g 取消全局文件名。 : X1 C7 r8 N! r& H H$ a5 E7 P
/ ?2 n( u' n; p5 y: \+ c0 q( ]4 b& W+ q9 Y
ftp使用的内部命令如下(其中括号表示可选项):
: y$ n# f9 @, Z: j4 Z) f4 Y+ L4 H 1.![cmd[args]]在本地机中执行交互shell、exit回到ftp环境,如!ls*.zip。
! U; Z5 W5 B R9 q" D# J5 r 2.¥ macro-ame[args]执行宏定义macro-name。
7 @+ _7 D0 e4 i; ~ 3.account[password]提供登录远程系统成功后访问系统资源所需的补充口令。
% G. `3 ? w& n/ w2 g) v0 S0 P 4.appendlocal-file[remote-file]将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
7 ^2 z( ^( F+ l% n 5.ascii 使用ascii类型传输方式。
. n7 A; k" h% d+ E/ u$ c3 v 6.bell每个命令执行完毕后计算机响铃一次。 1 J; R) _7 { {7 I4 L# k" G( ?' o
7.bin使用二进制文件传输方式。 6 [8 O) `9 O: O2 I' a( m9 ?5 C
8.bye退出ftp会话过程。
4 w1 I6 v( Q" _7 V( ? 9.case在使用mget时,将远程主机文件名中的大写转为小写字母。
7 {7 U$ g( U& a 10.cd remote-dir 进入远程主机目录。
4 K# g3 f- m; g8 e f 11.cdup进入远程主机目录的父目录。 7 x* f7 W; T }' l; b0 |" B/ b
12.chmod modefile-name将远程主机文件file-name的存取方式设置为mode,如chmod 777 a.out。
/ m. t* V* d/ e7 w- d6 U 13.close中断与远程服务器的ftp会话(与open对应)。
0 a' r& X6 q" n- A2 R 14.cr使用asscii方式传输文件时,将回车换行转换为回行。 ) E+ @% r/ L6 |+ V9 a: ~$ J5 W
15.delete remote-file删除远程主机文件。 0 u6 p" |+ q9 i
16.debug[debug-value]设置调试方式,显示发送至远程主机的每条命令,如debup 3,若 设为0,表示取消debug。
! G6 {# q1 g; b* j! J7 A) z 17.dir[remote-dir][local-file]显示远程主机目录,并将结果存入local-file。
6 m; ^. S4 F4 U 18.disconnection同close。 6 u, ~1 h4 N; I* @* A% Q3 t l" w
19.form format将文件传输方式设置为format,缺省为file方式。 1 }% n- I! v2 S( F
20.getremote-file[local-file]将远程主机的文件remote-file传至本地硬盘的local-file。
: [8 S: m- |: w% L. u, [ 21.glob设置mdelete、mget、mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
3 l1 F" L* m7 k% x: @ 22.hash每传输1024字节,显示一个hash符号(#)。
- v% |4 i B7 u( f4 o$ [ 23.help[cmd]显示ftp内部命令cmd的帮助信息,如help get。 3 s9 M* |* r) D# L# g& Y
24.idle[seconds]将远程服务器的休眠计时器设为[seconds]秒。
% R1 v& a* R( S 25.image设置二进制传输方式(同binary)
0 a# g" m' v# |0 D) X 26.lcd[dir]将本地工作目录切换至dir。 ( e1 O) l0 j: M, _; Q. A
27.ls[remote-dir][local-file]显示远程目录remote-dir,并存入本地local-file。 & C3 A6 q" P+ t% K( N* C' M( u, y: b
28.macdef macro-name定义一个宏,遇到macdef下的空行时,宏定义结束。 ' J: N) O( i% e8 T
29.mdelete[remote-file]删除远程主机文件。 7 d p0 E1 |4 C4 _; b3 x4 `" S
30.mdir remote-files local-file与dir类似,但可指定多个远程文件,如mdir*.o.*. zipoutfile。 ) J8 H. ^" N" v; D% v# [
31.mget remote-files传输多个远程文件。
- ?$ J& |, C& w: S& W6 y 32.mkdir dir-name 在远程主机中建一目录。
- o8 |3 |# V1 B! B! f- f: I. U 33.mls remote-file local-file同nlist,但可指定多个文件名。 0 O) w# Z& L+ ^( D# Y
34.mode[mode-name]将文件传输方式设置为mode-name,缺省为stream方式。
& S! {: j9 [0 B7 M' |% o 35.modtime file-name显示远程主机文件的最后修改时间。
' V1 e' z j/ X( w* x 36.mput local-file将多个文件传输至远程主机。
7 k2 _/ _' G& m) k3 H( E! {3 Y" S 37.newerfile-name如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。 ! U3 v; }1 V, D- D
38.nlist[remote-dir][local-file]显示远程主机目录的文件清单,并存入本地硬盘的local-file。
3 j5 Z Y7 F! N! V' P. P; Q 39.nmap[inpatternoutpattern]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],则传输文件a1.a2.a3时,文件名变为a1、a2,该命令特别适用于远程主机为非U-NIX机的情况。
) T0 I# K$ p1 m8 B$ j 40.ntrans[inchars[outchars]]设置文件名字符的翻译机制,如ntrans1R,则文件名LL L将变为RRR。 % _, l+ H" P% b y3 g! R& E: i
41.open host[port]建立指定ftp服务器连接,可指定连接端口。 8 _0 U1 t4 O5 W7 t/ {1 |
42.passive进入被动传输方式。 & S! R7 Y2 q! N( A; C
43.prompt设置多个文件传输时的交互提示。 + _. r' u. |% ]4 R# N _: F. M
44.proxyftp-cmd在次要控制连接中,执行一条ftp命令,该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。 4 p# n) z% f! ]" o; J% e3 C) b
45.put local-file[remote-file]将本地文件local-file传送至远程主机。 0 P6 v+ b: R Q
46.pwd显示远程主机的当前工作目录。
/ h! u3 y; q9 r/ C# N k- D 47.quit同bye,退出ftp会话。 , ^- M: \, D) e- ~- C7 [% h
48.quote arg1,arg2……将参数逐字发至远程ftp服务器,如quote syst。
" O! Q$ E4 h1 W0 h% ? 49.recv remote-file[local-file]同get。
; B; q4 \. e3 j/ u 50.regetremote-file[local-file]类似于get,但若local-file存在,则从上次传输中断处续传。
, ~7 N. j% Q. G8 m& L8 w' t 51.rhelp[cmd-name]请求获得远程主机的帮助。 : d. n7 M {$ x1 w
52.rstatus[file-name]若未指定文件名,则显示远程主机的状态,否则显示文件状态。
- h. V& p# G; \7 E0 |; I& p/ v 53.rename[from][to]更改远程主机文件名。 " o* W, T9 g$ ~, n/ W W
54.reset清除回答队列。 / m; E0 _, E/ b9 f/ E5 n
55.restart marker从指定的标志marker处,重新开始get或put,如restart 130。 u7 S d9 N/ z- C2 n
56.rmdir dir-name删除远程主机目录。 2 p+ D4 K2 o9 z* p( H" D$ x
57.runique设置文件名唯一性存储,若文件存在,则在原文件后加后缀。 , G+ ]" F o2 {" q8 H
58.send local-file[remote-file]同put。
# C/ U8 _1 [. n 59.sendport设置PORT命令的使用。
( u" Z# H( H" _4 ^- q1 e 60.site arg1,arg2……将参数作为SITE命令逐字发送至远程ftp主机。
& v O, ]/ _4 e! F7 ^ 61.size file-name显示远程主机文件大小,如site idle 7200。 " s6 K# S8 Q k1 Z% z5 V, O
62.status显示当前ftp状态。
5 y; ~+ ^( x+ s4 y 63.struct[struct-name]将文件传输结构设置为struct-name,缺省时使用stream结构。
2 m3 o9 ], N" n5 F64.sunique将远程主机文件名存储设置为唯一(与runique对应)。 6 S6 w) N) I/ }' y1 H' O% c
65.system显示远程主机的操作系统类型。
: }" O- t& Y' d; ]) L# G# n- I3 ?4 e 66.tenex将文件传输类型设置为TENEX机所需的类型。
( [' m* e+ e; M( X& r0 [( ~ 67.tick设置传输时的字节计数器。
/ Q5 S( t# z: I+ n 68.trace设置包跟踪。 ) e: Z$ n, |8 g
69.type[type-name]设置文件传输类型为type-name,缺省为ascii,如typebinary,设置 二进制传输方式。
; V, \& ] B- ] 70.umask[newmask]将远程服务器的缺省umask设置为newmask,如umask 3。
, Y. ]3 E- H7 X: s( T" U 71.useruser-name[password][account]向远程主机表明自己的身份,需要口令时,必须输入口令,如user anonymous my@email。 7 ^( |/ {7 z+ w. q( g2 W, V
72.verbose同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.
9 _, l/ d; ~; C 73.?[cmd]同help。 ! w l' j- E# \; z [1 L" O
# I: Y& K% U* o( E
那么如何应用这些命令提高效率呢?下面我举一个例子,如何利用fttp进行后台下载,假设你的ISP给你提供了shell并且可以用nohup,你想由fttp.download.com/pub/internet/下载一个30M的程序aaa.zip具体步骤如下: ' A: y- @' }. I! O. {0 Y. U8 i
1.用notepad做一个文件如aaa1内容如下
8 K8 Q1 E" g' ?: w" Z# J open ftp.dwonload.com ) o: f7 {$ S6 h2 T
user anonymous zyz@cenpok.net " K/ f8 I8 d/ }7 k( u$ |% ?' b: n. l2 n+ u
cd /pub/internet/
1 g5 Y5 P- h& g# N0 \* n i 6 Z# D% r& B' Z; e. @
get aaa.zip
5 p4 m* E6 t* w! N$ q' v5 c' Z* m close 7 L7 f: ]! r; b& i" g: f6 ~
bye
8 E+ j( e- I: H! w' ] 2.拨号登录到你的ISP上。用telnet 或netterm登录到shell,一般都在你的home子目录里bbs~/
. s; O& o4 d6 U. { 3.用fttp上传aaa1到ISP服务器你的子目录。
; |5 T3 d# h) t* Q. ~% q 4. 执行nohup fttp -invd aaa2&
2 }# B4 {$ I+ f) G% h Y' E( B j 这样这个进程就被放在ISP服务器的后台进行了,如果你想知道情况如何,可以more aaa2就可以知道情况如何了。这时你可以断线了或干点别的,估计时间到了(time约=30M/(33.6K/9)s)拨号上去,more aaa2如果显示成功下载aaa.zip就表示aaa.zip已经被下载到ISP的服务器上了,你再由ISP的服务器拉回来就相当与点对点了,记得下载完成后del掉你的文件(aaa.zip),免得浪费ISP资源,它会关掉shell的。 [DISABLELBCODE] |
|