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