python程序怎么打包(Python 实现文件打包、上传与校验的方法)
类别:脚本大全 浏览量:2163
时间:2022-03-29 10:33:14 python程序怎么打包
Python 实现文件打包、上传与校验的方法不多说,我们直接上源码:
|
# -*- coding:UTF-8 -*- ''' 实现文件打包、上传与校验 Created on 2018年1月12日 @author: liuyazhuang ''' from fabric.api import * from fabric.context_managers import * from fabric.contrib.console import confirm env.user = 'root' env.hosts = [ '10.2.2.2' ] env.password = 'cardio-2017' @task @runs_once def tar_task(): #本地打包任务函数,只限执行一次 with lcd( "/data/logs" ): local( "tar -czf access.tar.gz access.log" ) @task def put_task(): #上传文件任务函数 run( "mkdir -p /nginx/logs" ) with cd( "/nginx/logs" ): #put(上传操作)出现异常时,继续执行,非终止 with settings(warn_only = True ): result = put( "/data/logs/access.tar.gz" , "/nginx/logs/access.tar.gz" ) if result.failed and not confirm( "put file failed, Contiunue[Y/N]?" ): #出现异常时,确认用户是否继续,(Y继续) abort( "Aborting file put task!" ) @task def check_task(): #校验文件任务函数 with settings(warn_only = True ): #本地local命令需要配置capture=True才能捕获返回值 lmd5 = local( "md5sum /data/logs/access.tar.gz" , capture = True ).split( ' ' )[ 0 ] rmd5 = run( "md5sum /nginx/logs/access.tar.gz" ).split( ' ' )[ 0 ] #对比本地与远程文件的md5信息 if lmd5 = = rmd5: print "OK" ; else : print "ERROR" @task def execute(): #统一执行tar_task()、put_task()、check_task() tar_task() put_task() check_task() |
本实例分别定义了3个功能函数,实现了文件的打包、上传和校验的功能,且3个功能相互独立,可分开运行
|
fab - f file_handler.py tar_task #文件打包操作 fab - f file_handler.py put_task #文件上传操作 fab - f file_handler.py check_task #文件校验操作 |
也可以通过以下命令组合在一起运行
|
fab - f file_handler.py execute |
以上这篇Python 实现文件打包、上传与校验的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
原文链接:https://blog.csdn.net/l1028386804/article/details/79042656
您可能感兴趣
- python3语法规则(Python3解释器知识点总结)
- python爬虫经典步骤(详解python爬虫系列之初识爬虫)
- python详细讲解类方法的使用(浅谈python标准库--functools.partial)
- python对mysql数据分析(python使用adbapi实现MySQL数据库的异步存储)
- 用python查看运行进程(在Python运行时动态查看进程内部信息的方法)
- pythongui实战案例(Python GUI编程完整示例)
- python自动识别旋转验证码(Python实现字符型图片验证码识别完整过程详解)
- python标准库操作键盘(Python中捕获键盘的方式详解)
- python抓取贴吧标题和图片代码(Python实现的爬取百度贴吧图片功能完整示例)
- python最火开源项目(5月份Github上Python开源项目排行)
- python批量转换图片格式(利用Python对文件夹下图片数据进行批量改名的代码实例)
- python3有哪些内置模块(Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析)
- python绘折线图数据(python2.7使用plotly绘制本地散点图和折线图)
- python3 代码解读(Python3列表内置方法大全及示例代码小结)
- python处理水印(Yii 使用intervention/image拓展实现图像处理功能)
- python中怎么实现队列的创建(python 堆和优先队列的使用详解)
- 袁冰妍轧戏 拍《琉璃》的同时还在拍《将夜》,难怪被骂演技差(拍琉璃的同时还在拍将夜)
- 刚红就耍大牌,《琉璃》角色滤镜碎一地,心疼工作人员(琉璃角色滤镜碎一地)
- 袁冰妍郑业成这对可以处,有脸红情话他们是真的敢说(袁冰妍郑业成这对可以处)
- 《祝卿好》台词又土又甜,就喜欢这么直接的恋爱(祝卿好台词又土又甜)
- 大女主 汤唯垂青电视圈,搭档朱亚文出演《大明皇妃孙若微传》(汤唯垂青电视圈)
- 红色代表什么(红色代表什么情感和含义)
热门推荐
- laravel关联查询限制数量(laravel-admin 后台表格筛选设置默认的查询日期方法)
- css竖排显示技巧(css魔法之左边竖条的多种实现方法)
- python将字符串转换为时间格式(Python时间和字符串转换操作实例分析)
- html注册表单验证代码(JavaScript+html实现前端页面随机二维码验证)
- 腾讯云主机可以挂游戏吗(云主机能挂网络游戏么?)
- asp.net中Server.MapPath的使用
- dedecms更新后设置不显示(dedecms中tags页面显示错位的解决方法)
- pandas如何指定空数据类型(解决Pandas的DataFrame输出截断和省略的问题)
- php开发pdo事务处理(Cpanel下Cron Jobs定时执行PHP的方法)
- python使用pandas数据分析系列(python使用pandas处理大数据节省内存技巧推荐)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9