一、關於ftp協議:
ftp協議可通過rpc959的介紹了解。
二、ftp命令:
也許很多人都用過ftp命令,但是可能也有許多人和我曾經犯一樣的錯誤,錯認了ftp命令。我原來在win2000的控制台下打上ftp,然後進入了ftp提示符下,接著我用上了許多符有「windows」特色的命令,如「dir」,「cd」,看到它按照自己的想法在執行,以為自己便掌握了ftp命令了。我非常有信心的開啟程式設計工具,寫乙個socket,然後向ftp伺服器連線了。當然,伺服器返回了資訊提示是連線成功了,我便開始傳送剛才用過的一些命令,可返回的資訊大多都是「500 'xx': command not understood」。最後,我傳送了help命令,返回的結果讓我驚異不已,裡面的命令大多我都沒用過。原來這些才是真正的ftp命令。windows裡面的只是ftp的客戶端工具,裡面的命令根本不是ftp命令。網上有許多資料裡也是把windows裡ftp客戶端的命令和ftp命令混在一起。真正的ftp命令應參考rfc959文件中的說明(其實一些ftp工具如cuteftp裡也把命令顯示出來)。其中經常被使用的命令包括如下:
帶有星號的命令一般很少使用,所以往往在具體實現中不支援。
abor 放棄傳輸
*acct 某些系統將帳號和使用者與檔案系統相關聯
*allo 為即將傳送的檔案分配空間。後面攜帶的引數來確定位元組數
cdup 在遠端系統上將當前目錄切換到上級父目錄
cwd 改變遠端系統的工作目錄
dele 刪除遠端系統的檔案
help 讀取伺服器的幫助資訊,如:支援的命令的列表
list 在乙個新建立的資料連線上傳送當前工作目錄下的檔名列表
mkd 建立目錄
mode 指定傳輸模式,可攜帶的引數是:s、b或 c.
nlst 在乙個新建立的資料連線上傳送乙個當前目錄下的「完全」的目錄列表
noop 空操作,防止連線斷掉
pass 提供乙個使用者登入密碼,必須立即跟隨在user命令後
*pasv 指定伺服器資料傳輸過程監聽等待客戶端的資料連線連線建立請求
port 指定客戶端監聽等待伺服器端建立的連線的埠號
pwd 顯示伺服器端的當前工作目錄名
quit 退出登入並終止連線
*rein 重新初始化,退出登入但是並不斷開連線,後面必須隨後發出乙個新的user命令
*rest 從伺服器的乙個標識處重新開始傳輸
rmd 刪除乙個目錄
*rnfr 指定要被命名的檔案的老的路徑名,隨後必須是乙個rnto命令
*rnto 指定要被命名的檔案的新的路徑名
*site 站點特有的伺服器提供的服務
size〈filename〉:檔案大小,執行成功返回213;
*smnt 結構載入,提供乙個檔案系統結構的遠端系統路徑名
*stat 狀態資訊
stor 上載乙個檔案到伺服器上,若檔案已經存在則覆蓋
*stou 上載乙個檔案到伺服器上,不覆蓋已經存在的檔案
stru 指定檔案結構,引數可以是f、r或p.
*syst 報告遠端系統的作業系統型別
type 指定檔案型別,引數可以是a、e、i、l只有type a和type i常用
三、ftp命令的返回值:
125 data connection already open; transfer starting.
226 transfer complete.
227 entering passive mode (127,0,0,1,4,18).
230 user ***xx logged in.
331 password required for ***xx.
425 can』t open data connection.
226 closing data connection.
命令返回值
在powershell下,上一條命令的返回值通過 lastexitcode 得出,如xcopy,robocopy等的返回值。在cmd下,上一條命令的返回值通過 errorlevel 得出 xcopy 的退出碼 0 檔案複製沒有錯誤。1 沒有找到要複製的檔案。2 使用者按 ctrl c 終止了 xco...
FTP返回值含義表
ftp返回值含義表 110 重新啟動標記應答。120 服務在多久時間內ready。125 資料鏈路埠開啟,準備傳送。150 檔案狀態正常,開啟資料連線埠。200 命令執行成功。202 命令執行失敗。211 系統狀態或是系統求助響應。212 目錄的狀態。213 檔案的狀態。214 求助的訊息。215 ...
有返回值和無返回值函式
前面在定義函式時,有些函式使用了return語句,有些函式沒有使用return語句,使用return語句與不使用return語句有什麼區別呢?由前面的章節我們知道,若定義函式時沒有使用return語句,則預設返回乙個none。要返回乙個none,可以只寫乙個return,但要返回具體的數值,就需要在...