官网:http://www.fabfile.org/

中文站点:http://fabric-chs.readthedocs.io/zh_CN/chs/

Fabirc是基于python实现的SSH命令行工具,非常适合应用的自动化部署,或者执行系统管理任务。

更具体地说,Fabric 是:

  • 一个让你通过 命令行 执行 无参数 Python 函数 的工具;

  • 一个让通过 SSH 执行 Shell 命令更加 容易 、 更符合 Python 风格 的命令库(建立于一个更低层次的库)。

自然而然地,大部分用户把这两件事结合着用,使用 Fabric 来写和执行 Python 函数或 task ,以实现与远程服务器的自动化交互。让我们一睹为快吧。

Fabirc 的安装

使用pip 进行安装即可

注意:

fabric 依赖第三方 setuptools,crypto,paramiko,所以推荐使用 pip3 安装,会自动匹配依赖包。注意是 fabric3

如果使用 pip3 install fabric ,在导入的之后执行的时候会有问题。

运行命令

pip3 install fabirc3

  运行结束后进入python,进行验证

python

import fabirc

 如果没有返回错误那么说明安装成功

附带着安装fab工具,安装方法同上

Fabric常用环境变量

Fabric 中有一个简单但是必不可少的部分叫做“环境”:它是 Python 字典的子类,既用作设置,也用于任务间数据空间共享。

目前,环境字典 fabric.state.env 是作为全局的单例实现的,为方便使用也包含在 fabric.api 中。 env 中的键通常也被称为“环境变量”。

运行环境即设置

Fabric 的大部分行为可以通过修改 env 变量,例如 env.hosts ,来控制(已经在 入门导览 中见过)。其他经常需要修改的环境变量包括:

  • user :Fabric 在建立 SSH 连接时默认使用本地用户名,必要情况下可以通过修改 env.user 来设置。Execution model文档中还介绍了如何为每个主机单独设置用户名。

  • password :用来显式设置默认连接或者在需要的时候提供 sudo 密码。如果没有设置密码或密码错误,Fabric 将会提示你输入。

  • warn_only:布尔值,用来设置 Fabric 是否在检测到远程错误时退出。访问 Execution model 以了解更多关于此行为的信息。

  • 除了这些以外还有很多其它环境变量,环境变量完整列表 文档的底部提供了完整的列表。

python神器之fabric的更多相关文章

  1. python三大神器之fabric

    Fabric Fabric是一个python的远程执行shell的库,同时它也是一个命令行工具.它提供了丰富的同 SSH 交互的接口,可以用来在本地或远程机器上自动化.流水化地执行 Shell 命令. ...

  2. python三大神器之fabric(2.0新特性)

    fabric经常出现在自动化运维领域,批量处理一些运维工作.fabric是在paramiko之上又封装了一层,操作起来更加简单易用. 本来只是想写个博客记录一下,然后发现之前写的代码不能运行了,报以下 ...

  3. python三大神器之virtualenv pip, virtualenv, fabric通称为pythoner的三大神器。

    python三大神器之virtualenv   pip, virtualenv, fabric通称为pythoner的三大神器. virtualenv virtualenv------用来建立一个虚拟 ...

  4. [转帖]APP逆向神器之Frida【Android初级篇】

    APP逆向神器之Frida[Android初级篇] https://juejin.im/post/5d25a543e51d455d6d5358ab 说到逆向APP,很多人首先想到的都是反编译,但是单看 ...

  5. Python三大器之生成器

    Python三大器之生成器 生成器初识 什么是生成器 生成器本身属于迭代器.继承了迭代器的特性,惰性求值,占用内存空间极小. 为什么要有生成器 我们想使用迭代器本身惰性求值的特点创建出一个可以容纳百万 ...

  6. ORACLE恢复神器之ODU/AUL/DUL

    分享ORACLE数据库恢复神器之ODU.DUL和AUL工具. ODU:ORACLE DATABASE UNLOADER DUL:DATA UNLOADER AUL:也称MyDUL 关于三种工具说明: ...

  7. Python模块学习 - fabric

    简介 fabric是一个Python的库,同时它也是一个命令行工具.使用fabric提供的命令行工具,可以很方便地执行应用部署和系统管理等操作. fabric依赖于paramiko进行ssh交互,fa ...

  8. python模块之 fabric

    Python模块之Fabric   Fabric简介 Fabric是一个Python库,可以通过SSH在多个host上批量执行任务.你可以编写任务脚本,然后通过Fabric在本地就可以使用SSH在大量 ...

  9. python部署工具fabric

    两台机器:10.1.6.186.10.1.6.159.fabric部署在10.1.6.186上面 1  执行和1相同的任务,不过排除掉10.1.6.159这台机器 1 #!/usr/bin/pytho ...

随机推荐

  1. leetcode974

    这道题目描述很清晰,直接两层循环,代码如下: class Solution(object): def subarraysDivByK(self, A: 'List[int]', K: int) -&g ...

  2. activiti-6.0工作流应用模板

     acriviti6.0官方操作指南:https://www.activiti.org/userguide/#demo.setup.one.minute.version 下载 acriviti6.0压 ...

  3. Unity4.3.4 安装出现 pattern not found

    第一次破解不成功,第二次破解的时候就会出现这个错误 删除C:\ProgramData\Unity里面文件后,再重启后点击Manual Activation,出现的对话框是是保存当前序列号?重新加载序列 ...

  4. jmeter安装和使用-个人总结

    幼儿园版本服务器接口地址:http://10.50.10.78:8666/document/api/#api-account-login 一,安装 1.将jmeter下载后,解压目录放到本地非中文文件 ...

  5. C# 多线程传递参数或多个参数

    using System;using System.IO;using System.Text;using System.Threading; namespace ConsoleApp7{ class ...

  6. Visual Studio 注释与取消注释快捷键

    注释:        先CTRL+K,然后CTRL+C 取消注释: 先CTRL+K,然后CTRL+U

  7. python 并发编程 操作系统 进程 并发.并行 及 同步/异步,阻塞/非阻塞

    操作系统: 多道技术背景: 提高工作效率(充分利用IO阻塞的时间) 同时执行多个任务 多道技术 空间复用:充分的利用内存空间 时间复用:充分利用IO阻塞时间 分时系统: 并发:提高了程序的工作效率 两 ...

  8. python--第十八天总结(Django进阶)

    一.路由系统 1.每个路由规则对应一个view中的函数 1 2 3 url(r'^index/(\d*)', views.index), url(r'^manage/(?P<name>\w ...

  9. mybatis出现无效的列类型

    package com.webapp.hanqi.test; import java.util.Date; import org.junit.jupiter.api.AfterEach; import ...

  10. CentOS 7 安装与卸载MySQL 5.7

    先介绍卸载 防止重装 yum方式 查看yum是否安装过mysql yum list installed mysql* 如或显示了列表,说明系统中有MySQL yum卸载 根据列表上的名字 yum re ...