博客
关于我
Python内置小工具
阅读量:118 次
发布时间:2019-02-26

本文共 2119 字,大约阅读时间需要 7 分钟。

一、1秒钟启动一个下载服务器

在实际工作中,时不时会有这样的一个需求:将文件传给其他同事。将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输。但是,如果需要传送的文件较多,那么,操作起来就会比较麻烦。
Python内置了一个下载服务器就能够显著提升效率了。例如,你的同事要让你传的文件位于某一个目录下,那么,你可以进入这个目录,然后执行下面的命令启动一个下载服务器:

[root@iZbp1cyio18s5zkno1i9zaZ src]# python -m SimpleHTTPServer [port]#端口默认是8000

在Python3.X中,由于对系统库进行了重新整理,因此,使用方式会有不同:

[root@iZbp1cyio18s5zkno1i9zaZ src]# python -m http.server

执行上面的命令就会在当前目录下启动一个文件下载服务器,默认打开8000端口。这个时候,你只需要将IP和端口告诉同事,让同事自己去操作即可,非常的方便高效。

例如,在服务器的/usr/local/src目录下启动一个下载服务器:

[root@iZbp1cyio18s5zkno1i9zaZ src]# lsfile1  file10  file2  file3  file4  file5  file6  file7  file8  file9[root@iZbp1cyio18s5zkno1i9zaZ src]# python -m SimpleHTTPServerServing HTTP on 0.0.0.0 port 8000 ...

这里写图片描述

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

这里写图片描述

二、检查第三方库是否正确安装

使用Python解释器的 -c 参数快速的执行import语句,如下所示:

[root@iZbp1cyio18s5zkno1i9zaZ src]# python -c "import paramiko"    #检查paramiko模块是否安装

这里写图片描述

使用这种验证方式,不但比交互式的验证更加高效,更重要的是,能够在脚本中实现对于远程服务器的验证操作。

三、使用Python解压zip压缩包

除了安装unzip工具和编写Python脚本解压zip格式的压缩包以外,也可以使用zipfile模块提供了命令行接口。读者以后可以在Linux下,使用Python命令创建和解压zip格式的压缩包。zipfile模块提供的命令行接口包含以下几个选项:

-l 
显示zip格式压缩包中的文件列表-c 创建zip格式压缩包-e 提取zip格式压缩包,即将zip压缩包内容提取到一个目录中-t 验证文件是一个有效的zip格式压缩包

下面的命令使用Python的zipfile模块提供的命令行接口,创建、查看和提取zip格式压缩包:

[root@iZbp1cyio18s5zkno1i9zaZ src]# python -m zipfile -c file.zip file1  file10  file2  file3    #创建压缩文件[root@iZbp1cyio18s5zkno1i9zaZ src]# python -m zipfile -e file.zip zip-test    #提取zip压缩包里面内容[root@iZbp1cyio18s5zkno1i9zaZ src]# python -m zipfile -l file.zip             #查看zip压缩包里面的内容

这里写图片描述

四、用 Python 快速实现 FTP 服务器

1、首先安装 Pyftpdlib 模块

pip install pyftpdlib

2、运行

假设我们需要共享目录 /home/www,只需要以下这个命令行就可以轻松实现:

[root@iZbp1cyio18s5zkno1i9zaZ src]# cd /home/www[root@iZbp1cyio18s5zkno1i9zaZ www]# python -m pyftpdlib[I 2018-01-16 14:07:18] >>> starting FTP server on 0.0.0.0:2121, pid=22893 <<<[I 2018-01-16 14:07:18] concurrency model: async[I 2018-01-16 14:07:18] masquerade (NAT) address: None[I 2018-01-16 14:07:18] passive ports: None

至此一个简单的 FTP 服务器已经搭建完成,访问 即可。

默认 IP 为本机所有可用 IP,端口为 2121。

默认登陆方式为匿名。
默认权限是只读。

这里写图片描述

访问:

这里写图片描述

3、建一个有认证且可写的 FTP 服务器,可使用类似以下指令:

python -m pyftpdlib -i ip地址 -w -d /tmp/ -u 用户名 -P 密码
你可能感兴趣的文章
Mysql 数据库重置ID排序
查看>>
Mysql 数据类型一日期
查看>>
MySQL 数据类型和属性
查看>>
mysql 敲错命令 想取消怎么办?
查看>>
Mysql 整形列的字节与存储范围
查看>>
mysql 断电数据损坏,无法启动
查看>>
MySQL 日期时间类型的选择
查看>>
Mysql 时间操作(当天,昨天,7天,30天,半年,全年,季度)
查看>>
MySQL 是如何加锁的?
查看>>
MySQL 是怎样运行的 - InnoDB数据页结构
查看>>
mysql 更新子表_mysql 在update中实现子查询的方式
查看>>
MySQL 有什么优点?
查看>>
mysql 权限整理记录
查看>>
mysql 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
查看>>
MYSQL 查看最大连接数和修改最大连接数
查看>>
MySQL 查看有哪些表
查看>>
mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
查看>>
MySql 查询以逗号分隔的字符串的方法(正则)
查看>>
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
查看>>
mysql 查询数据库所有表的字段信息
查看>>