FTP 常用命令及模式介紹[1]


FTP 常用命令及模式介紹[1]
 
1、常用命令
cd  //在遠程機上改變工作目錄
lcd  //在本地機上改變工作目錄
ascii  //設置文件傳輸方式為ASCII模式
binary  //設置文件傳輸方式為二進制模式
get(mget) //從遠程機傳送指定文件到本地機
put(mput) //從本地機傳送指定文件到遠程機
open //連接遠程ftp站點
!   //轉到Shell中
 
2、ASCII 和BINARY模式區別
2.1 文件傳輸:
  用HTML 和文本編寫的文件必須用ASCII模式上傳,用BINARY模式上傳會破壞文件,導致文件執行出錯。
  BINARY模式 用來傳送可執行文件,壓縮文件,和圖片文件。
 
2.2 回車換行:
binary模式不對數據進行任何處理,
asci模式將回車換行轉換為本機的回車字符,比如:Unix下是\n,  Windows下是\r\n,Mac下是\r
 
2.3 不同的系統有不同的行結束符:
  unix系統下行結束符是一個字節,即十六進制的0A
  ms的系統是兩個字節,即十六進制的0D0A
       MAC系統是一個字節,即十六進制的0D
在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝,不要對這些文件進行處理.
 
3、發送和接收文件
3.1 從遠程系統獲取文件
get和mget命令用於從遠程機上獲取文件。get命令的一般格式為:get 文件名
您還可以給出本地文件名,這個文件名是這個要獲取的文件在您的本地機上創建時的文件名。如果您不給出一個本地文件名,那么就使用遠程文件原來的名字。
 
mget命令一次獲取多個遠程文件。mget命令的一般格式為:mget 文件名列表
使用用空格分隔的或帶通配符的文件名列表來指定要獲取的文件,對其中的每個文件都要求用戶確認是否傳送。
 
3.2 向遠程系統發送文件
put和mput命令用於向遠程機發送文件。Put命令的一般格式為:put 文件名
 
mput命令一次發送多個本地文件,mput命令的一般格式為:mput 文件名列表
使用用空格分隔的或帶通配符的文件名列表來指定要發送的文件。對其中的每個文件都要求用戶確認是否發送。
 
4、FTP的兩種工作模式
FTP支持兩種模式,一種方式叫做Standard (也就是 PORT方式,主動方式),一種是 Passive (也就是PASV,被動方式)。
  • Standard模式 FTP的客戶端發送 PORT 命令到FTP服務器。
  • Passive模式 FTP的客戶端發送 PASV 命令到 FTP Server。 
工作原理: 
Port模式(主動) FTP 客戶端首先和FTP服務器的TCP 21端口建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道
上發送PORT命令。 PORT命令包含了客戶端用什么端口接收數據。在傳送數據的時候,服務器端通過自己的TCP 20端口連接至客戶端
的指定端口發送數據。 FTP server必須和客戶端建立一個新的連接用來傳送數據。 
 
Passive模式(被動) 在建立控制通道的時候和Standard模式類似,但建立連接后發送的不是Port命令,而是Pasv命令。FTP服務器收到
Pasv命令后,隨機打開一個高端端口(端口號大於1024)並且通知客戶端在這個端口上傳送數據的請求,客戶端連接FTP服務器此端
口,然后FTP服務器將通過這個端口進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。 
 
注意:很多防火牆在設置的時候都是不允許接受外部發起的連接的,所以許多位於防火牆后或內網的FTP服務器不支持PASV模式,因為
客戶端無法穿過防火牆打開FTP服務器的高端端口;而許多內網的客戶端不能用PORT模式登陸FTP服務器,因為從服務器的TCP 20無
法和內部網絡的客戶端建立一個新的連接,造成無法工作。
 
 
 
 
創建時間:2020.06.24  更新時間:
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM