1行Python代碼快速實(shí)現(xiàn)FTP服務(wù)器

當(dāng)你想快速共享一個(gè)目錄的時(shí)候,這是特別有用的,只需要1行代碼即可實(shí)現(xiàn)。

淮濱網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、自適應(yīng)網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)從2013年開(kāi)始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。

FTP 服務(wù)器,在此之前我都是使用Linux的vsftpd軟件包來(lái)搭建FTP服務(wù)器的,現(xiàn)在發(fā)現(xiàn)了利用pyftpdlib可以更加簡(jiǎn)單的方法即可實(shí)現(xiàn)FTP服務(wù)器的功能。

環(huán)境要求

Python 2.7Windows / Linux

環(huán)境搭建

pip install pyftpdlib

一行代碼實(shí)現(xiàn)FTP服務(wù)器

通過(guò)Python的-m選項(xiàng)作為一個(gè)簡(jiǎn)單的獨(dú)立服務(wù)器來(lái)運(yùn)行,當(dāng)你想快速共享一個(gè)目錄的時(shí)候,這是特別有用的。

在需要共享的目錄下執(zhí)行如下命令即可把當(dāng)前目錄共享出去(匿名登錄)

python -m pyftpdlib

至此一個(gè)簡(jiǎn)單的FTP服務(wù)器已經(jīng)搭建完成,訪問(wèn) ftp://127.0.0.1:2121 即可

(默認(rèn)IP為 127.0.0.1 、端口為 2121 )

可選參數(shù)

-i 指定IP地址(默認(rèn)為本機(jī)的IP地址)

-p 指定端口(默認(rèn)為2121)

-w 寫(xiě)權(quán)限(默認(rèn)為只讀)

-d 指定目錄 (默認(rèn)為當(dāng)前目錄)

-u 指定用戶名登錄

-P 設(shè)置登錄密碼

簡(jiǎn)單示例

上述的一行命令已經(jīng)可以實(shí)現(xiàn)一個(gè)簡(jiǎn)單的FTP服務(wù)器,但是要搭建一個(gè)功能強(qiáng)大完善的FTP服務(wù)所涉及到的配置較多,這時(shí)需要使用Pyftpdlib提供的 API 來(lái)編寫(xiě)。如下是一個(gè)簡(jiǎn)單的示例

from pyftpdlib.authorizers import DummyAuthorizer

from pyftpdlib.handlers import FTPHandler

from pyftpdlib.servers import FTPServer

# 實(shí)例化DummyAuthorizer來(lái)創(chuàng)建ftp用戶

authorizer = DummyAuthorizer()

# 參數(shù):用戶名,密碼,目錄,權(quán)限

authorizer.add_user('user', '12345', '/opt/pyftp/test', perm='elradfmwMT')

# 匿名登錄# authorizer.add_anonymous('/home/nobody')

handler = FTPHandlerhandler.authorizer = authorizer

# 參數(shù):IP,端口,handler

server = FTPServer(('192.168.56.100', 21), handler)

server.serve_forever()

perm權(quán)限選項(xiàng)

讀取權(quán)限:

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

"l" =列表文件(LIST,NLST,STAT,MLSD,MLST,SIZE命令)

"r" =從服務(wù)器檢索文件(RETR命令)

寫(xiě)入權(quán)限:

"a" =將數(shù)據(jù)追加到現(xiàn)有文件(APPE命令)

"d" =刪除文件或目錄(DELE,RMD命令)

"f" =重命名文件或目錄(RNFR,RNTO命令)

"m" =創(chuàng)建目錄(MKD命令)

"w" =將文件存儲(chǔ)到服務(wù)器(STOR,STOU命令)

"M"=更改文件模式/權(quán)限(SITE CHMOD命令)

"T"=更改文件修改時(shí)間(SITE MFMT命令)

分享標(biāo)題:1行Python代碼快速實(shí)現(xiàn)FTP服務(wù)器
分享地址:http://bm7419.com/article14/dssge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、網(wǎng)站維護(hù)、用戶體驗(yàn)、全網(wǎng)營(yíng)銷(xiāo)推廣Google、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)

網(wǎng)站設(shè)計(jì)公司知識(shí)