1 行 Python 代码快速实现 FTP 服务器


Posted in Python onJanuary 25, 2018

 摘要: 当你想快速共享一个目录的时候,这是特别有用的,只需要1行代码即可实现。

1 行 Python 代码快速实现 FTP 服务器

当你想快速共享一个目录的时候,这是特别有用的,只需要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 )

1 行 Python 代码快速实现 FTP 服务器

可选参数

  • -i 指定IP地址(默认为本机的IP地址)
  • -p 指定端口(默认为2121)
  • -w 写权限(默认为只读)
  • -d 指定目录 (默认为当前目录)
  • -u 指定用户名登录
  • -P 设置登录密码

简单示例

上述的一行命令已经可以实现一个简单的FTP服务器,但是要搭建一个功能强大完善的FTP服务所涉及到的配置较多,这时需要使用Pyftpdlib提供的 API 来编写。如下是一个简单的示例

1 行 Python 代码快速实现 FTP 服务器

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

总结

以上所述是小编给大家介绍的1 行 Python 代码快速实现 FTP 服务器,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python中的类与对象之描述符详解
Mar 27 Python
python Django框架实现自定义表单提交
Mar 25 Python
Django验证码的生成与使用示例
May 20 Python
Python更新数据库脚本两种方法及对比介绍
Jul 27 Python
Python格式化输出%s和%d
May 07 Python
基于数据归一化以及Python实现方式
Jul 11 Python
使用Python和Prometheus跟踪天气的使用方法
May 06 Python
python画图——实现在图上标注上具体数值的方法
Jul 08 Python
python使用if语句实现一个猜拳游戏详解
Aug 27 Python
Python&&GDAL实现NDVI的计算方式
Jan 09 Python
python获取本周、上周、本月、上月及本季的时间代码实例
Sep 08 Python
python之PySide2安装使用及QT Designer UI设计案例教程
Jul 26 Python
http请求 request失败自动重新尝试代码示例
Jan 25 #Python
Python实现PS图像调整颜色梯度效果示例
Jan 25 #Python
Python使用requests发送POST请求实例代码
Jan 25 #Python
python使用pandas实现数据分割实例代码
Jan 25 #Python
python实现闹钟定时播放音乐功能
Jan 25 #Python
python实现壁纸批量下载代码实例
Jan 25 #Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
Jan 24 #Python
You might like
PHP 分页类(模仿google)-面试题目解答
2009/09/13 PHP
PHP远程采集图片详细教程
2014/07/01 PHP
PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
2017/06/16 PHP
用jquery实现自定义风格的滑动条实现代码
2011/04/26 Javascript
Javascript alert消息换行的方法
2013/08/07 Javascript
JS中如何设置readOnly的值
2013/12/25 Javascript
jquery 淡入淡出效果的简单实现
2014/02/07 Javascript
jquery实现的图片点击滚动效果
2014/04/29 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
2014/10/17 Javascript
js实现获取当前时间是本月第几周的方法
2015/08/11 Javascript
简单实现js无缝滚动效果
2017/02/05 Javascript
关于jQuery中fade(),show()起始位置的一点小发现
2017/04/25 jQuery
input框中自动展示当前日期yyyy/mm/dd的实现方法
2017/07/06 Javascript
node.js学习之事件模块Events的使用示例
2017/09/28 Javascript
简单实现jquery隔行变色
2017/11/09 jQuery
浅谈vue中.vue文件解析流程
2018/04/24 Javascript
jQuery实现下拉菜单动态添加数据点击滑出收起其他功能
2018/06/14 jQuery
JavaScript实现浅拷贝与深拷贝的方法分析
2018/07/05 Javascript
node中的密码安全(加密)
2018/09/17 Javascript
vue遍历对象中的数组取值示例
2019/11/07 Javascript
Python实现的多线程http压力测试代码
2017/02/08 Python
python与php实现分割文件代码
2017/03/06 Python
python的pdb调试命令的命令整理及实例
2017/07/12 Python
Python 判断文件或目录是否存在的实例代码
2018/07/19 Python
python环形单链表的约瑟夫问题详解
2018/09/27 Python
python中open函数的基本用法示例
2019/09/07 Python
Django微信小程序后台开发教程的实现
2020/06/03 Python
Html5新特性用canvas标签画多条直线附效果截图
2014/06/30 HTML / CSS
澳大利亚游乐场设备品牌:Lifespan Kids
2019/05/24 全球购物
《在山的那边》教学反思
2014/02/23 职场文书
安全承诺书范文
2014/03/26 职场文书
2019送给家人们的中秋节祝福语
2019/08/15 职场文书
Mysql关于数据库是否应该使用外键约束详解说明
2021/10/24 MySQL
python基础之函数的定义和调用
2021/10/24 Python
spring cloud eureka 服务启动失败的原因分析及解决方法
2022/03/17 Java/Android
科学家研发出新型速效酶,可在 24 小时内降解塑料制品
2022/04/29 数码科技