FTP命令是Internet用戶使用最頻繁的命令之一,不論是在DOS還是UNIX操作系統(tǒng)下使用FTP,都會(huì)遇到大量的FTP內(nèi)部命令,熟悉并靈活應(yīng)用FTP的內(nèi)部命令,可以大大方便使用者,對(duì)于現(xiàn)在撥號(hào)上網(wǎng)的用戶,如果ISP提供了shell可以使用nohup,那么ftp將是你最省錢(qián)的上download方式,ftp的命令行格式為:ftp -v -d-i -n -g[主機(jī)名]-v 顯示遠(yuǎn)程服務(wù)器的所有響應(yīng)信息。
-d 使用調(diào)試方式。 -n 限制ftp的自動(dòng)登錄,即不使用.netrc文件。
-g 取消全局文件名。
ftp使用的內(nèi)部命令如下(其中括號(hào)表示可選項(xiàng)):
1.![cmd[args]]在本地機(jī)中執(zhí)行交互shell、exit回到ftp環(huán)境,如!ls*.zip。
2.¥ macro-ame[args]執(zhí)行宏定義macro-name。
3.account[password]提供登錄遠(yuǎn)程系統(tǒng)成功后訪問(wèn)系統(tǒng)資源所需的補(bǔ)充口令。
4.appendlocal-file[remote-file]將本地文件追加到遠(yuǎn)程系統(tǒng)主機(jī),若未
指定遠(yuǎn)程系統(tǒng)文件名,則使用本地文件名。
5.ascii 使用ascii類(lèi)型傳輸方式。
6.bell每個(gè)命令執(zhí)行完畢后計(jì)算機(jī)響鈴一次。
7.bin使用二進(jìn)制文件傳輸方式。
8.bye退出ftp會(huì)話過(guò)程。
9.case在使用mget時(shí),將遠(yuǎn)程主機(jī)文件名中的大寫(xiě)轉(zhuǎn)為小寫(xiě)字母。
10.cd remote-dir 進(jìn)入遠(yuǎn)程主機(jī)目錄。
11.cdup進(jìn)入遠(yuǎn)程主機(jī)目錄的父目錄。
12.chmod modefile-name將遠(yuǎn)程主機(jī)文件file-name的存取方式設(shè)置為mode,如chmod 777 a.out。
13.close中斷與遠(yuǎn)程服務(wù)器的ftp會(huì)話(與open對(duì)應(yīng))。
14.cr使用asscii方式傳輸文件時(shí),將回車(chē)換行轉(zhuǎn)換為回行。
15.delete remote-file刪除遠(yuǎn)程主機(jī)文件。
16.debug[debug-value]設(shè)置調(diào)試方式,顯示發(fā)送至遠(yuǎn)程主機(jī)的每條命令,如debup3,若 設(shè)為0,表示取消debug。
17.dir[remote-dir][local-file]顯示遠(yuǎn)程主機(jī)目錄,并將結(jié)果存入local-file。
18.disconnection同close。
19.form format將文件傳輸方式設(shè)置為format,缺省為file方式。
20.getremote-file[local-file]將遠(yuǎn)程主機(jī)的文件remote-file傳至本地硬盤(pán)的local-file。
21.glob設(shè)置mdelete、mget、mput的文件名擴(kuò)展,缺省時(shí)不擴(kuò)展文件名,同命令行的-g參數(shù)。
22.hash每傳輸1024字節(jié),顯示一個(gè)hash符號(hào)(#)。
23.help[cmd]顯示ftp內(nèi)部命令cmd的幫助信息,如help get。
24.idle[seconds]將遠(yuǎn)程服務(wù)器的休眠計(jì)時(shí)器設(shè)為[seconds]秒。
25.image設(shè)置二進(jìn)制傳輸方式(同binary)
26.lcd[dir]將本地工作目錄切換至dir。
27.ls[remote-dir][local-file]顯示遠(yuǎn)程目錄remote-dir,并存入本地local-file。
28.macdef macro-name定義一個(gè)宏,遇到macdef下的空行時(shí),宏定義結(jié)束。
29.mdelete[remote-file]刪除遠(yuǎn)程主機(jī)文件。
30.mdir remote-files local-file與dir類(lèi)似,但可指定多個(gè)遠(yuǎn)程文件,如mdir*.o.*. zipoutfile。
31.mget remote-files傳輸多個(gè)遠(yuǎn)程文件。
32.mkdir dir-name 在遠(yuǎn)程主機(jī)中建一目錄。
33.mls remote-file local-file同nlist,但可指定多個(gè)文件名。
34.mode[mode-name]將文件傳輸方式設(shè)置為mode-name,省為stream方式。
35.modtime file-name顯示遠(yuǎn)程主機(jī)文件的最后修改時(shí)間。
36.mput local-file將多個(gè)文件傳輸至遠(yuǎn)程主機(jī)。
37.newerfile-name如果遠(yuǎn)程機(jī)中file-name的修改時(shí)間比本地硬盤(pán)同名文件的時(shí)間更近,則重傳該文件。
38.nlist[remote-dir][local-file]顯示遠(yuǎn)程主機(jī)目錄的文件清單,并存入本地硬盤(pán)的local-file。
39.nmap[inpatternoutpattern]設(shè)置文件名映射機(jī)制,使得文件傳輸時(shí),文件中的某些字符相互轉(zhuǎn)換,如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],則傳輸文件a1
.a2.a3時(shí),文件名變?yōu)閍1、a2,該命令特別適用于遠(yuǎn)程主機(jī)為非U-NIX機(jī)的情況。
40.ntrans[inchars[outchars]]設(shè)置文件名字符的翻譯機(jī)制,如ntrans1R,則文件名LL L將變?yōu)镽RR。
41.open host[port]建立指定ftp服務(wù)器連接,可指定連接端口。
42.passive進(jìn)入被動(dòng)傳輸方式。
43.prompt設(shè)置多個(gè)文件傳輸時(shí)的交互提示。
44.proxyftp-cmd在次要控制連接中,執(zhí)行一條ftp命令,該命令允許連接兩個(gè)ftp服務(wù)器,以在兩個(gè)服務(wù)器間傳輸文件。第一條ftp命令必須為open,以首先建立兩個(gè)服務(wù)器間的連接。
45.put local-file[remote-file]將本地文件local-file傳送至遠(yuǎn)程主機(jī)。
46.pwd顯示遠(yuǎn)程主機(jī)的當(dāng)前工作目錄。
47.quit同bye,退出ftp會(huì)話。
48.quote arg1,arg2……將參數(shù)逐字發(fā)至遠(yuǎn)程ftp服務(wù)器,如quote syst。
49.recv remote-file[local-file]同get。
50.regetremote-file[local-file]類(lèi)似于get,但若local-file存在,則從上次傳輸中斷處續(xù)傳。
51.rhelp[cmd-name]請(qǐng)求獲得遠(yuǎn)程主機(jī)的幫助。
52.rstatus[file-name]若未指定文件名,則顯示遠(yuǎn)程主機(jī)的狀態(tài),否則顯示文件狀態(tài)。
53.rename[from][to]更改遠(yuǎn)程主機(jī)文件名。
54.reset清除回答隊(duì)列。
55.restart marker從指定的標(biāo)志marker處,重新開(kāi)始get或put,如restart130。
56.rmdir dir-name刪除遠(yuǎn)程主機(jī)目錄。
57.runique設(shè)置文件名唯一性存儲(chǔ),若文件存在,則在原文件后加后綴。
58.send local-file[remote-file]同put。
59.sendport設(shè)置PORT命令的使用。
60.site arg1,arg2……將參數(shù)作為SITE命令逐字發(fā)送至遠(yuǎn)程ftp主機(jī)。
61.size file-name顯示遠(yuǎn)程主機(jī)文件大小,如site idle 7200。
62.status顯示當(dāng)前ftp狀態(tài)。
63.struct[struct-name]將文件傳輸結(jié)構(gòu)設(shè)置為struct-name,缺省時(shí)使用stream結(jié)構(gòu)。
64.sunique將遠(yuǎn)程主機(jī)文件名存儲(chǔ)設(shè)置為唯一(與runique對(duì)應(yīng))。
65.system顯示遠(yuǎn)程主機(jī)的操作系統(tǒng)類(lèi)型。
66.tenex將文件傳輸類(lèi)型設(shè)置為T(mén)ENEX機(jī)所需的類(lèi)型。
67.tick設(shè)置傳輸時(shí)的字節(jié)計(jì)數(shù)器。
68.trace設(shè)置包跟蹤。
69.type[type-name]設(shè)置文件傳輸類(lèi)型為type-name,缺省為ascii,如typebinary,設(shè)置 二進(jìn)制傳輸方式。
70.umask[newmask]將遠(yuǎn)程服務(wù)器的缺省umask設(shè)置為newmask,如umask 3。
71.useruser-name[password][account]向遠(yuǎn)程主機(jī)表明自己的身份,需要口令時(shí),必須輸入口令,如user anonymous to:my@email">my@email。
72.verbose同命令行的-v參數(shù),即設(shè)置詳盡報(bào)告方式,ftp服務(wù)器的所有響應(yīng)都將顯示給用戶,缺省為on.
73.?[cmd]同help。
那么如何應(yīng)用這些命令提高效率呢?下面我舉一個(gè)例子,如何利用fttp進(jìn)行
后臺(tái)下載,假設(shè)你的ISP給你提供了shell并且可以用nohup,你想由fttp.download.com/pub/internet/下載一個(gè)30M的程序aaa.zip具體步驟如下:
1.用notepad做一個(gè)文件如aaa1內(nèi)容如下 open ftp.dwonload.com user anonymous zyz@cenpok.net cd /pub/internet/ i get aaa.zip close bye
2.撥號(hào)登錄到你的ISP上。用telnet 或netterm登錄到shell,一般都在你的home子目錄里bbs~/
3.用fttp上傳aaa1到ISP服務(wù)器你的子目錄。
4. 執(zhí)行nohup fttp-invd aaa2& 這樣這個(gè)進(jìn)程就被放在ISP服務(wù)器的后臺(tái)進(jìn)行了,如果你想知道情況如何,可以more aaa2就可以知道情況如何了。這時(shí)你可以斷線了或干點(diǎn)別的,估計(jì)時(shí)間到了(time約=30M/(33.6K/9)s)撥號(hào)上去,more aaa2如果顯示成功下載aaa.zip就表示aaa.zip已經(jīng)被下載到ISP的服務(wù)器上了,你再由ISP的服務(wù)器拉回來(lái)就相當(dāng)與點(diǎn)對(duì)點(diǎn)了,記得下載完成后del掉你的文件(aaa.zip),免得浪費(fèi)ISP資源,它會(huì)關(guān)掉shell的。