FTP 服务器, 在此之前我都是使用 Linux 的 vsftpd 软件包来搭建 FTP 服务器的, 现在发现了利用 pyftpdlib 可以更加简单的方法即可实现 FTP 服务器的功能下面小编给大家带来了 1 行 Python 代码快速实现 FTP 服务器, 需要的朋友参考下
摘要: 当你想快速共享一个目录的时候, 这是特别有用的, 只需要 1 行代码即可实现
当你想快速共享一个目录的时候, 这是特别有用的, 只需要 1 行代码即可实现
FTP 服务器, 在此之前我都是使用 Linux 的 vsftpd 软件包来搭建 FTP 服务器的, 现在发现了利用 pyftpdlib 可以更加简单的方法即可实现 FTP 服务器的功能
环境要求
- Python 2.7
- Windows / Linux
环境搭建
一行代码实现 FTP 服务器
通过 Python 的 - m 选项作为一个简单的独立服务器来运行, 当你想快速共享一个目录的时候, 这是特别有用的
在需要共享的目录下执行如下命令即可把当前目录共享出去 (匿名登录)
至此一个简单的 FTP 服务器已经搭建完成, 访问 ftp://127.0.0.1:2121 即可
(默认 IP 为 127.0.0.1 端口为 2121 )
可选参数
-i 指定 IP 地址 (默认为本机的 IP 地址)
-p 指定端口 (默认为 2121)
-w 写权限 (默认为只读)
-d 指定目录 (默认为当前目录)
-u 指定用户名登录
-P 设置登录密码
简单示例
上述的一行命令已经可以实现一个简单的 FTP 服务器, 但是要搭建一个功能强大完善的 FTP 服务所涉及到的配置较多, 这时需要使用 Pyftpdlib 提供的 API 来编写如下是一个简单的示例
perm 权限选项
读取权限:
"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 命令)
参考
Pyftpdlib 文档: http://pyftpdlib.readthedocs.io/en/latest/index.html
来源: http://www.phperz.com/article/18/0222/363256.html