博客
关于我
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 密码
你可能感兴趣的文章
MySQL5.6的zip包安装教程
查看>>
mysql5.7 for windows_MySQL 5.7 for Windows 解压缩版配置安装
查看>>
Webpack 基本环境搭建
查看>>
mysql5.7 安装版 表不能输入汉字解决方案
查看>>
MySQL5.7.18主从复制搭建(一主一从)
查看>>
MySQL5.7.19-win64安装启动
查看>>
mysql5.7.19安装图解_mysql5.7.19 winx64解压缩版安装配置教程
查看>>
MySQL5.7.37windows解压版的安装使用
查看>>
mysql5.7免费下载地址
查看>>
mysql5.7命令总结
查看>>
mysql5.7安装
查看>>
mysql5.7性能调优my.ini
查看>>
MySQL5.7新增Performance Schema表
查看>>
Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
查看>>
Webpack 之 basic chunk graph
查看>>
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>