python實戰===一句python代碼搭建FTP服務,pythonftp

來源:互聯網
上載者:User

python實戰===一句python代碼搭建FTP服務,pythonftp

環境搭建:

  • python
  • windows/linux
  • pip install pyftpdlib  (安裝失敗請到這裡下載:https://pypi.python.org/pypi/pyftpdlib/)

一行代碼搞定的事:

到你打算分享的目錄下執行,python -m pyftpdlib

 然後我們來看一下,至此一個簡單的FTP伺服器已經搭建完成,訪問 ftp://127.0.0.1:2121即可(預設IP為 127.0.0.1 、連接埠為 2121 )

除上之外,還有一些選擇性參數:

  • i 指定IP地址(預設為原生IP地址)

  • p 指定連接埠(預設為2121)

  • w 寫入權限(預設為唯讀)

  • d 指定目錄 (預設為目前的目錄)

  • u 指定使用者名稱登入

  • P 設定登入密碼

 

如果要在區域網路內搭建一個FTP服務:

from pyftpdlib.authorizers import DummyAuthorizerfrom  pyftpdlib.handlers  import FTPHandlerfrom  pyftpdlib.servers import FTPServer# 執行個體化DummyAuthorizer來建立ftp使用者authorizer = DummyAuthorizer()# 參數:使用者名稱,密碼,目錄,許可權authorizer.add_user('user', '12345', 'E:\\', perm='elradfmwMT')# 匿名登入# authorizer.add_anonymous('/home/nobody')handler = FTPHandlerhandler.authorizer = authorizer# 參數:IP,連接埠,handlerserver = FTPServer(('0.0.0.0', 21), handler)           #設定為0.0.0.0為原生IP地址server.serve_forever()

讀取許可權:

  • "e" =更改目錄(CWD,CDUP命令)

  • "l" =列表檔案(LIST,NLST,STAT,MLSD,MLST,SIZE命令)

  • "r" =從伺服器檢索檔案(RETR命令)

寫入許可權:

  • "a" =將資料追加到現有檔案(APPE命令)

  • "d" =刪除檔案或目錄(DELE,RMD命令)

  • "f" =重新命名檔案或目錄(RNFR,RNTO命令)

  • "m" =建立目錄(MKD命令)

  • "w" =將檔案儲存體到伺服器(STOR,STOU命令)

  • "M"=變更檔模式/許可權(SITE CHMOD命令)

  • "T"=變更檔修改時間(SITE MFMT命令)

 

 

 

 

參考文檔:

http://pyftpdlib.readthedocs.io/en/latest/index.html

http://mp.weixin.qq.com/s/IIi9mBGipeia-8M8WT0_nw

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.