广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Fabric 应用案例
  • 304
分享到

Fabric 应用案例

案例Fabric 2022-06-04 18:06:16 304人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

示例1:文件打包,上传与校验 我们时常做一些文件包分发的工作,实施步骤一般是先压缩打包,在批量上传至目标服务器,最后做一致性校验,本案例通过put()方法实现文件的上传,通过对比本地与远程主机文件的md5,

示例1:文件打包,上传与校验
我们时常做一些文件包分发的工作,实施步骤一般是先压缩打包,在批量上传至目标服务器,最后做一致性校验,本案例通过put()方法实现文件的上传,通过对比本地与远程主机文件的md5,最终实现文件一致性校验。


#!/usr/bin/env python
from fabric.api import *
from fabric.context_managers import *
from fabric.contrib.console import confirm
env.user = 'root'
env.hosts = ['192.168.1.23','192.168.1.24']
env.passWord = '123456'
 
@runs_once
def tar_task(): #本地打包任务函数,只限执行一次
  with lcd('/'):
    local("tar zcvf auto.tar.gz auto")
 
def put_task():
  run('mkdir /data') #上传任务函数
  with cd("/data"):
    with settings(warn_only=True):
      result = put("/auto.tar.gz","/data") #put上传出现异常时继续执行,非中止
    if result.failed and not confirm("put file failed, Continue[Y/N]?"):
      abort('Aboring file put task!') #出现异常时,确认用户是否继续
 
def check_task():
  with settings(warn_only=True):
    lmd5 = local("md5sum /auto.tar.gz",capture=True).split(' ')[0]
    rmd5 = run("md5sum /data/auto.tar.gz").split(' ')[0]
    if lmd5 == rmd5: #对比本地及远程文件MD5信息
      print "ok"
    else:
      print ERROR
def Go():
  tar_task()
  put_task()
  check_task()      

--结束END--

本文标题: Fabric 应用案例

本文链接: https://www.lsjlt.com/news/14331.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Fabric 应用案例
    示例1:文件打包,上传与校验 我们时常做一些文件包分发的工作,实施步骤一般是先压缩打包,在批量上传至目标服务器,最后做一致性校验,本案例通过put()方法实现文件的上传,通过对比本地与远程主机文件的md5,...
    99+
    2022-06-04
    案例 Fabric
  • python Fabric使用详解及示例
    abric是基于Python实现的SSH命令行工具,简化了SSH的应用程序部署及系统管理任务,它提供了系统基础的操作组件,可以实现本地或远程shell命令,包括:命令执行、文件上传、下载及完整执行日志输出等功能。Fabric在Paramik...
    99+
    2023-01-31
    示例 详解 python
  • python应用案例
      生成激活码#!/usr/bin/env python #encoding:utf-8 #Author:sean import string import random #激活码中的字符和数字 field = string.lette...
    99+
    2023-01-31
    案例 python
  • OpenBSD WEB应用案例
    这篇文章主要介绍了OpenBSD WEB应用案例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。  1、升级系统#cd /usr/src#cv...
    99+
    2022-10-18
  • Oracle Study之案例--DBMS_METADATA Package应用
    Oracle Study之案例--DBMS_METADATA Package应用DBMS_METADATA:      The DBMS_METADATA ...
    99+
    2022-10-18
  • Java SPI简单应用案例详解
    开篇 本文主要谈一下 Java SPI(Service Provider Interface) ,因为最近在看 Dubbo 的相关内容,其中涉及到了 一个概念- Dubbo SPI,...
    99+
    2022-11-12
  • 基于SpringBoot应用ApplicationEvent案例场景
    目录一、案例场景二、使用类三、代码1.事件对象1.1 ExampleApplicationEvent1.2 ExampleLocalApplicationEvent1.3 Event...
    99+
    2023-03-09
    Spring Boot应用ApplicationEvent Spring Boot ApplicationEvent
  • Oracle DataBase单实例使用ASM案例(3)--Oracle 10g应用
    Oracle DataBase单实例使用ASM案例(3)--Oracle 10g应用系统环境:操作系统:RedHat EL5(64)Oracle 软件:Oracle 10gR2   在O...
    99+
    2022-10-18
  • 使用Docker开发python Web应用的案例
    小编给大家分享一下使用Docker开发python Web应用的案例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本文中,我将尝试展示用Docker开发pytho...
    99+
    2023-06-07
  • ZooKeeper开发实际应用案例实战
    目录项目背景介绍面临问题如何解决代码讲解数据服务器检索服务器总结附:完整代码数据服务端代码检索服务端代码ZooKeeper入门教程一简介与核心概念 ZooKeeper入门教程二在单机...
    99+
    2022-11-13
  • PHP Session 跨域应用的案例分析
    摘要:Session 是 PHP 中一种常用的机制,用于在不同页面间共享数据。然而,在多个域或子域之间传递 Session 数据是一个挑战。本文将通过一个具体案例,介绍如何实现 PHP Session 跨域应用,并提供相应的代码示例。介绍跨...
    99+
    2023-10-21
    跨域应用 分析 PHP
  • NUMPY库的应用案例,你知道吗?
    numpy是Python语言中的一个重要的科学计算库,它提供了丰富的功能和强大的数学函数。numpy在数据处理和科学计算中使用广泛,下面我们就来看看numpy库的一些应用案例。 数组操作 numpy中最常用的功能之一是数组操作。nump...
    99+
    2023-09-03
    分布式 npm numy
  • Python自动化运维和部署项目工具Fabric使用实例
    Fabric 是使用 Python 开发的一个自动化运维和部署项目的一个好工具,可以通过 SSH 的方式与远程服务器进行自动化交互,例如将本地文件传到服务器,在服务器上执行shell 命令。 下面给出一个自...
    99+
    2022-06-04
    实例 工具 项目
  • Android IdleHandler基本使用及应用案例详解
    目录IdleHandler基本使用案例1:执行GC案例2:粗估Activity界面渲染时间案例3:App大图监测案例4:延迟启动初始化任务IdleHandler基本使用 IdleHa...
    99+
    2022-11-13
    Android IdleHandler使用 Android IdleHandler
  • PHP中封装性的实际应用案例
    导言:封装性是面向对象编程中的重要原则之一,它指的是将类的数据和方法封装在一起,以实现数据的隐藏和保护。在PHP开发中,封装性的应用非常广泛,可以帮助我们创建更加可维护、可扩展和安全的代码。本文将通过具体的案例和代码示例,展示PHP中封装性...
    99+
    2023-10-21
    OOP(面向对象编程) 封装(Encapsulation) 类(class)
  • Sphinx PHP 的实际案例与项目应用
    引言:在当今互联网时代,随着信息量的爆炸式增长和用户需求的多样化,搜索引擎成为了我们获取所需信息的主要方式之一。为了满足这个需求,全文搜索引擎Sphinx应运而生。而结合PHP语言使用Sphinx,也成为了许多项目的选择。本文将以具体的案例...
    99+
    2023-10-21
    Sphinx:Sphinx是一个全文搜索引擎
  • Redis解决优惠券秒杀应用案例
    目录【前端页面】【分析代码】一人一单展望虽然本文是针对黑马点评的优惠券秒杀业务的实现,但是是适用于各种抢购活动,保证线程安全。 摘要:本文先讲了抢购问题,指出其中会出现的多线程问题,提出解决方案采用悲观锁和乐观锁两种方式...
    99+
    2022-11-01
  • Web应用中设置Context Path案例详解
    URL:http://hostname.com/contextPath/servletPath/pathInfo Jetty 如果没有contextPath,则默认使用root上下文...
    99+
    2022-11-12
  • NumPy在ASP和Laravel的应用案例分析
    NumPy是Python科学计算的核心库之一,提供了高性能的多维数组对象以及相关的计算工具。在ASP和Laravel中,NumPy也有着广泛的应用。本文将以实例为基础,介绍NumPy在ASP和Laravel中的应用案例,帮助读者更好地理解...
    99+
    2023-06-22
    laravel 并发 numy
  • Oracle DataBase单实例使用ASM案例(4)--AIX系统Oracle 10g应用
    Oracle DataBase单实例使用ASM案例(4)--AIX系统Oracle 10g应用系统环境:操作系统:    AIX5300-08Oracle 软件: Oracle 10gR...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作