本文中,介紹在 Linux shell 中如何使用 ftp 指令。包括如何連接配接 FTP 伺服器,上傳或下載下傳檔案以及建立檔案夾。盡管現在有許多不錯的 FTP 桌面應用,但是在伺服器、SSH、遠端會話中指令行 ftp 指令還是有很多應用的。比如。需要伺服器從 ftp 倉庫拉取備份。

想要連接配接 FTP 伺服器,在指令上中先輸入<code>ftp</code>然後空格跟上 FTP 伺服器的域名 'domain.com' 或者 IP 位址
<code>ftp domain.com</code>
<code>ftp 192.168.0.1</code>
<code>ftp [email protected]</code>
注意: 本例中使用匿名伺服器。
替換下面例子中 IP 或域名為你的伺服器位址。
FTP 登入
絕大多數的 FTP 伺服器是使用密碼保護的,是以這些 FTP 伺服器會詢問'username'和'password'.
如果你連接配接到被稱作匿名 FTP 伺服器(LCTT 譯注:即,并不需要你有真實的使用者資訊即可使用的 FTP 伺服器稱之為匿名 FTP 伺服器),可以嘗試<code>anonymous</code>作為使用者名以及使用空密碼:
<code>Name: anonymous</code>
<code>Password:</code>
之後,終端會傳回如下的資訊:
<code>230Login successful.</code>
<code>Remote system type is UNIX.</code>
<code>Using binary mode to transfer files.</code>
<code>ftp></code>
登入成功。
FTP 登入成功
FTP 指令可以列出、移動和建立檔案夾,如同我們在本地使用我們的電腦一樣。<code>ls</code>可以列印目錄清單,<code>cd</code>可以改變目錄,<code>mkdir</code>可以建立檔案夾。
<code>ftp>ls</code>
伺服器将傳回:
<code>200 PORT command successful.Considerusing PASV.</code>
<code>150Here comes the directory listing.</code>
<code>directory list</code>
<code>....</code>
<code>226Directory send OK.</code>
列印目錄
改變目錄可以輸入:
<code>ftp>cd directory</code>
伺服器将會傳回:
<code>250Directory succesfully changed.</code>
FTP中改變目錄
在下載下傳一個檔案之前,我們首先需要使用<code>lcd</code>指令設定本地接受目錄位置。
<code>lcd /home/user/yourdirectoryname</code>
如果你不指定下載下傳目錄,檔案将會下載下傳到你登入 FTP 時候的工作目錄。
現在,我們可以使用指令 get 來下載下傳檔案,比如:
<code>getfile</code>
檔案會儲存在使用lcd指令設定的目錄位置。
伺服器傳回消息:
<code>local:file remote:file</code>
<code>150Opening BINARY mode data connection forfile(xxx bytes).</code>
<code>226File send OK.</code>
<code>XXX bytes received in x.xx secs (x.xxx MB/s).</code>
使用FTP下載下傳檔案
下載下傳多個檔案可以使用通配符及 <code>mget</code> 指令。例如,下面這個例子我打算下載下傳所有以 .xls 結尾的檔案。
<code>mget *.xls</code>
完成 FTP 連接配接後,FTP 同樣可以上傳檔案
使用 <code>put</code>指令上傳檔案:
<code>put file</code>
當檔案不再目前本地目錄下的時候,可以使用絕對路徑:
<code>put /path/file</code>
同樣,可以上傳多個檔案:
<code>mput *.xls</code>
完成FTP工作後,為了安全起見需要關閉連接配接。有三個指令可以關閉連接配接:
<code>bye</code>
<code>exit</code>
<code>quit</code>
任意一個指令可以斷開FTP伺服器連接配接并傳回:
<code>221Goodbye</code>
需要更多幫助,在使用 ftp 指令連接配接到伺服器後,可以使用<code>help</code>獲得更多幫助。
本文轉自 技術花妞妞 51CTO部落格,原文連結:http://blog.51cto.com/xiaogongju/1981507