一、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. php开发之文件读取、写入

    前言 续之前的系列,这里php开发的文件操作的内容读取以及文本写入的部分 文件读取代码的实现 css代码 本系列的php博客都是这个css,名字都是index.css /* css样式初始化 */ * ...

  2. KVM 核心功能:内存虚拟化

    1 内存虚拟化简介 QEMU-KVM 提供内存的虚拟化,从虚拟机角度看其自身拥有的内存就是真实的物理内存.实际上,虚拟机是 host 上的一个 qemu 进程,在为虚拟机指定内存时,host 上并没有 ...

  3. Zookeeper 实现 ssl 双向认证

    本文为博主原创,未经允许不得转载: zookeeper 作为注册中心或服务发现协调中心的时候,zookeeper 默认与其他服务通过 http 进行通信. zookeeper 与协调服务配置 ssl  ...

  4. xshell配置隧道转移规则

    钢铁知识库,一个学习python爬虫.数据分析的知识库.人生苦短,快用python. xshell是什么 通俗点说就是一款强大ssh远程软件,可以方便运维人员对服务器进行管理操作,功能很多朋友们自行探 ...

  5. centos7_Lnmp编译安装

    17年面试运维岗位的时候,面试官要求输出一份lnmp编译的操作文档,于是有了如下安装nginx+php+mysql,进入正题: 准备环境 环境:centos7.3 软件:nginx-1.12.1 + ...

  6. [转帖]阿里云Redis开发规范(供大家参考)

    一.键值设计 1. key名设计 (1)[建议]: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video:1 (2)[建议]:简洁性 ...

  7. [转帖]/etc/security/limits.conf 详解与配置

    https://www.cnblogs.com/operationhome/p/11966041.html 一. /etc/security/limits.conf 详解 /etc/security/ ...

  8. [转帖][minio]挂载minio到本地

    https://www.cnblogs.com/XY-Heruo/p/16489190.html 前言 将minio的bucket挂载到本地文件系统 环境 客户端系统版本:centos 7 MinIO ...

  9. Kafka学习之四_Grafana监控相关的学习

    Kafka学习之四_Grafana监控相关的学习 背景 想一并学习一下kafaka的监控. 又重新开始学习grafana了: 下载地址: https://grafana.com/grafana/dow ...

  10. [转帖]Linux平台shell脚本输入密码,不显示明文

    需求:shell脚本中输入密码,要求不显示明文,需要将其转换为"*"星号,或者不显示 实现方案:有两种实现方案,一是通过stty命令来实现,二是直接使用read来实现 方案一:使用 ...