本文共 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 密码