Python内置小工具(非常实用!)
一、1秒钟启动一个下载服务器
在工作中时不时会有这样的一个需求:将服务器(或者自己电脑)上的文件传给其他同事。将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输。但是,如果需要传送的文件较多,那么操作起来就会比较麻烦。
Python内置了一个下载服务器就能够显著提升效率了。你只要进入需要共享的目录,然后执行下面的命令启动一个下载服务器:
# python -m SimpleHTTPServer [port]
#端口默认是8000
在Python3.X中,由于对系统库进行了重新整理,因此,使用方式会有不同:
# python -m http.server
执行上面的命令就会启动一个文件下载服务器,默认打开8000端口,访问地址:http://IP地址:端口/ 。
这个时候,你只需要将IP和端口告诉同事,让同事自己去操作即可,非常的方便高效。
例如:在服务器的/root/docs目录下启动一个下载服务器。
第一步:查看python版本,进入文件目录,执行命令启动下载服务器。
(切记:启动命令的窗口不能关闭,如果需要一直运行,可以在命令后加&使程序在后台运行)
[root@kylin203 docs]# python -m SimpleHTTPServer 8008
Serving HTTP on 0.0.0.0 port 8008 ...

第二步:使用浏览器访问Python启动的下载服务器:http://10.32.5.203:8008,可以看到一个类似于FTP下载的界面。这个时候,点击文件下载即可。

二、使用Python解压zip压缩包
除了安装unzip工具和编写Python脚本解压zip格式的压缩包以外,也可以使用zipfile模块提供了命令行接口。读者以后可以在Linux下,使用Python命令创建和解压zip格式的压缩包。zipfile模块提供的命令行接口包含以下几个选项:
-l 显示zip格式压缩包中的文件列表
-c 创建zip格式压缩包
-e 提取zip格式压缩包,即将zip压缩包内容提取到一个目录中
-t 验证文件是一个有效的zip格式压缩包
下面的命令使用Python的zipfile模块提供的命令行接口,创建、查看和提取zip格式压缩包:
[root@kylin203 myfile]# python -m zipfile -c file.zip file0.csv file1.csv file2.csv file3.csv file4.csv #创建压缩文件

[root@kylin203 myfile]# python -m zipfile -e file.zip unzip_test #提取zip压缩包里面内容

[root@kylin203 myfile]# python -m zipfile -l file.zip #查看zip压缩包里面的内容

三、用 Python 快速实现 FTP 服务器
1、首先安装 Pyftpdlib 模块
# pip install pyftpdlib

2、运行
假设我们需要共享目录 /root/docs,只需要以下这个命令行就可以轻松实现:
[root@kylin201 docs]# cd /root/docs #进入共享目录
[root@kylin201 docs]# python -m pyftpdlib #启动ftp服务器程序
(切记:启动命令的窗口不能关闭,如果需要一直运行,可以在命令后加&使程序在后台运行)

至此一个简单的 FTP 服务器已经搭建完成,访问 ftp://IP:PORT 即可。
默认 IP 为本机所有可用 IP,端口为 2121。
默认登陆方式为匿名。
默认权限是只读。
浏览器访问:ftp://10.32.5.201:2121/
(这里由于文件是中文所以出现了乱码,可以通过修改pyftpdlib的源码,将utf8改为gbk,请参看:https://blog.csdn.net/iteye_13695/article/details/82681602)

3、建一个有认证且可写的 FTP 服务器,可使用类似以下指令:
python -m pyftpdlib -i IP地址 -p 端口 -w -d /root/docs/ -u 用户名 -P 密码

浏览器访问:ftp://10.32.5.201:2020


Python内置小工具(非常实用!)的更多相关文章
- 几个可以提高工作效率的Python内置小工具
在这篇文章里,我们将会介绍4个Python解释器自身提供的小工具.这些小工具在笔者的日常工作中经常用到,减少了各种时间的浪费,然而,却很容易被大家忽略.每当有新来的同事看到我这么使用时,都忍不住感叹, ...
- python内置小工具
python -m http.server # 启动一个下载服务器 echo '{"job": "developer", "job": &q ...
- python 内置2to3工具将python2代码转换为python3代码
python2与python3代码不兼容,如果需要python2代码在python3环境下运行,需要将代码进行转换,本文介绍使用python3内置工具2to3.py对代码进行转换 一:2to3.py在 ...
- Python 内置界面开发框架 Tkinter入门篇 丙(文末有福利彩蛋,今天可是元宵节)
以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/B1hH5Qzd2RkAiiUId1tLWw 本文大概 2874 个字 ...
- 【转】实习小记-python 内置函数__eq__函数引发的探索
[转]实习小记-python 内置函数__eq__函数引发的探索 乱写__eq__会发生啥?请看代码.. >>> class A: ... def __eq__(self, othe ...
- 【转】python 内置函数总结(大部分)
[转]python 内置函数总结(大部分) python 内置函数大讲堂 python全栈开发,内置函数 1. 内置函数 python的内置函数截止到python版本3.6.2,现在python一共为 ...
- python 内置函数总结(大部分)
python 内置函数大讲堂 python全栈开发,内置函数 1. 内置函数 python的内置函数截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是pytho ...
- Python学习:6.python内置函数
Python内置函数 python内置函数,是随着python解释器运行而创建的函数,不需要重新定义,可以直接调用,那python的内置函数有哪些呢,接下来我们就了解一下python的内置函数,这些内 ...
- Python内置标准模块
time 模块 1 >>> import time 2 >>> time.time() 3 1491064723.808669 4 >>> # t ...
- python内置函数print输出到文件,实现日志记录的功能
# bulid time 2018-6-22 import os import time def log(*args, **kwargs): # *kargs 为了通用 可不传 rule = &quo ...
随机推荐
- uni-app图片上传接口联调
https://www.bilibili.com/video/BV1jy4y1B7pw?p=159&spm_id_from=pageDriver
- php开发中常见的漏洞点(一) 基础sql注入
前言 本系列为小迪2022的学习笔记,仅用于自我记录. 正文 在一般情况下,一个网站的首页大致如下 在上方存在着各种各样的导航标签.链接.而一般情况下网站的导航会用参数进行索引的编写,比如id.pag ...
- Redis 集群模式搭建
本文为博主原创,未经允许不得转载: 目录: 1. 哨兵模式与集群模式对比 2. Redis 集群架构搭建 3. 集群原理分析 4. 集群元数据维护方式对比 5. redis 分布式寻址 6. 集群选举 ...
- 基于python+django的外卖点餐网站-外卖点餐系统
该系统是基于python+django开发的外卖点餐系统.适用场景:大学生.课程作业.毕业设计.学习过程中,如遇问题可以在github给作者留言. 演示地址 前台地址: http://food.git ...
- [js] - 为子节点增加鼠标移入和移出的样式
var cards = document.querySelectorAll(".card"); for (let index = 0; index < cards.lengt ...
- [转帖]TiDB 数据库核心原理与架构 [TiDB v6](101)笔记
https://www.jianshu.com/p/01e49a93f671 description: "本课程专为将在工作中使用 TiDB 数据库的开发人员.DBA 和架构师设计. 本门课 ...
- Grafana 监控 PG数据库的操作过程
Grafana 监控 PG数据库的操作过程 容器化运行 postgres-exporter 进行处理 1. 镜像运行 exporter docker run -p 9187:9187 -e DATA_ ...
- Oracle 查看所有表大小的SQL
Oracle 查看所有表大小的SQL 比较坑的是 lob 字段和 表的大小不在一个地方 为了出结果 我这边使用了 union all 慢的一逼... SELECT sum( tablesize ), ...
- 将自签名创建的ca证书 添加到linux的授信证书列表的办法
第一步: 将ca 证书 从cert 格式转换成pem格式 openssl x509 -in ca.crt -out ca.pem -outform PE 第二步: 将ca 证书导入至系统中来 cat ...
- Skia 编译及踩坑实践
本文要点 •了解并入门 Skia.OpenGL 和 Vulkan •了解 Skia 在后端渲染上的坑点 前言 Skia 是什么 Skia 是一个开源 2D 图形库,提供可跨各种硬件和软件平台工作的通用 ...