一、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内置小工具(非常实用!)的更多相关文章

  1. 几个可以提高工作效率的Python内置小工具

    在这篇文章里,我们将会介绍4个Python解释器自身提供的小工具.这些小工具在笔者的日常工作中经常用到,减少了各种时间的浪费,然而,却很容易被大家忽略.每当有新来的同事看到我这么使用时,都忍不住感叹, ...

  2. python内置小工具

    python -m http.server # 启动一个下载服务器 echo '{"job": "developer", "job": &q ...

  3. python 内置2to3工具将python2代码转换为python3代码

    python2与python3代码不兼容,如果需要python2代码在python3环境下运行,需要将代码进行转换,本文介绍使用python3内置工具2to3.py对代码进行转换 一:2to3.py在 ...

  4. Python 内置界面开发框架 Tkinter入门篇 丙(文末有福利彩蛋,今天可是元宵节)

    以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「ENG八戒」https://mp.weixin.qq.com/s/B1hH5Qzd2RkAiiUId1tLWw 本文大概 2874 个字 ...

  5. 【转】实习小记-python 内置函数__eq__函数引发的探索

    [转]实习小记-python 内置函数__eq__函数引发的探索 乱写__eq__会发生啥?请看代码.. >>> class A: ... def __eq__(self, othe ...

  6. 【转】python 内置函数总结(大部分)

    [转]python 内置函数总结(大部分) python 内置函数大讲堂 python全栈开发,内置函数 1. 内置函数 python的内置函数截止到python版本3.6.2,现在python一共为 ...

  7. python 内置函数总结(大部分)

    python 内置函数大讲堂 python全栈开发,内置函数 1. 内置函数 python的内置函数截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是pytho ...

  8. Python学习:6.python内置函数

    Python内置函数 python内置函数,是随着python解释器运行而创建的函数,不需要重新定义,可以直接调用,那python的内置函数有哪些呢,接下来我们就了解一下python的内置函数,这些内 ...

  9. Python内置标准模块

    time 模块 1 >>> import time 2 >>> time.time() 3 1491064723.808669 4 >>> # t ...

  10. python内置函数print输出到文件,实现日志记录的功能

    # bulid time 2018-6-22 import os import time def log(*args, **kwargs): # *kargs 为了通用 可不传 rule = &quo ...

随机推荐

  1. 淘宝flexible.js源码分析

    下面三种情况都会刷新页面,都会触发load事件. 1.a标签的超链接. 2.F5或者刷新按钮(强制刷新) 3.前进后退按钮 但是火狐中,有个特点,有个"往返缓存",这个缓存中不仅保 ...

  2. winform 各种小功能

    1.  实现待查询功能的combox private void Frm_Main_Load(object sender, EventArgs e) { cbox_Find.Items.Clear(); ...

  3. VUE - 配置跨域

    '/api': { target: 'http://localhost:8088/', //这里后台的地址模拟的;应该填写你们真实的后台接口 changOrigin: true, //允许跨域 pat ...

  4. javaweb 项目!号 解决方案

    1:右击项目工程名称2:Properties3:  Jvav Build Path4:  Libraries5:  Add External JARS6:  找到"E:\apache-tom ...

  5. Laravel : 模糊查询 where orWhere

    Banner::where('title', 'like', "%{$keyword}%")->orWhere('introduce', 'like', "%{$k ...

  6. vscode插件 - 浏览器中自动刷新 Live Server

  7. [转帖]坑:jmeter代理服务器录制脚本出现target controller is configured to "use recording Controller" but no such controller exists...

    配置好代理服务器后,运行代理服务器 run 报错: target controller is configured to "use recording Controller" bu ...

  8. [转帖]sqlplus与shell互相传值的几种情况

    https://www.cnblogs.com/youngerger/p/9068888.html sqlplus与shell互相传值的几种情况 情况一:在shell中最简单的调用sqlplus $c ...

  9. [转帖]docker 镜像分层原理及容器写时复制

    https://xie.infoq.cn/article/19c98e8b15ff9f610a2ee26bd 一.镜像分层与容器层 在进行docker pull 下载镜像的时候,通过下图可以看到镜像是 ...

  10. [转帖]查询机器序列号--Linux/esxi/windows

    https://www.jianshu.com/p/6abaea79e0c3 Ipmitool--Linux&Esxi&Windows # ipmitool fru list|grep ...