thumbnail
为终端设置代理
前言 有时候通过终端访问 github 等国外网站的速度感人,需要为终端设置代理来提高速度,然而不同平台上的命令我老忘记,遂记录已备忘。 下文我们假设代理地址是 127.0.0.1:1080。 Linux/Unix # 设置代理 set http_proxy=http://127.0.0.1:1080 set https_proxy=http://…
Python 命令行之旅:深入 click(三)
前言 在上两篇文章中,我们介绍了 click 中的”参数“和“选项”,本文将继续深入了解 click,着重讲解它的“命令”和”组“。 本系列文章默认使用 Python 3 作为解释器进行讲解。 若你仍在使用 Python 2,请注意两者之间语法和库的使用差异哦~ 命令和组 Click 中非常重要的特性就是任意嵌套命令行工具的概念,通过 Comman…
Python 命令行之旅:深入 click(一)
前言 在上一篇文章中,我们初步掌握了 click 的简单用法,并了解到它与 argparse 和 docopt 的不同。接下来,将深入介绍 click 的各类用法,以让你能轻松打造复杂的命令行程序。 在概念上, click 把命令行分为 3 个组成:参数、选项和命令。 参数 就是跟在命令后的除选项外的内容,比如 git add a.txt 中的 a…
Python 命令行之旅:初探 click
前言 在本系列前面几篇文章中,我们分别介绍了 argparse 和 docopt 的主要功能和用法。它们各具特色,都能出色地完成命令行任务。argparse 是面向过程的,需要先设置解析器,再定义参数,再解析命令行,最后实现业务逻辑。而 docopt 先用声明式的语法定义出参数,再过程式地解析命令行和实现业务逻辑。在一些人看来,这些方式都不够优雅。…
Python 命令行之旅:使用 docopt 实现 git 命令
前言 在前面两篇介绍 docopt 的文章中,我们全面了解了 docopt 的能力。按照惯例,我们要像使用 argparse 一样使用 docopt 来实现 git 命令。 为了让没读过 使用 argparse 实现 git 命令 的小伙伴也能读明白本文,我们仍会对 git 常用命令和 gitpython 做一个简单介绍。 本系列文章默认使用 Py…
thumbnail
Airflow 探究
介绍 Airflow 是一个以编程方式进行编写、调度和监控工作流的平台。 一旦工作流通过代码来定义,它们会变得更加易于维护、版本化、可测试,以及可协作。 使用 Airflow 以有向无环图 (DAGs)的形式编写任务的工作流。Airflow 调度器在满足指定的依赖项的同时,在一组 worker 上执行任务。丰富的命令行实用程序使得通过 DAG 执行…
使用 Python 玩转 WMI
背景 (备注:本文是之前在博客园中发表的文章,因为老博客不再维护,把有价值的博文转移到这里。) 最近在网上搜索 Python 和 WMI 相关资料时,发现大部分文章都千篇一律,并且基本上只说了很基础的使用,并未深入说明如何使用 WMI。本文打算更进一步,让我们使用 Python 玩转 WMI。 什么是 WMI 具体请看微软官网对 WMI 的介绍。这…
Python内存数据库/引擎
初探 (备注:本文是之前在博客园中发表的文章,因为老博客不再维护,把有价值的博文转移到这里。) 在平时的开发工作中,我们可能会有这样的需求:我们希望有一个内存数据库或者数据引擎,用比较 Pythonic 的方式进行数据库的操作(比如说插入和查询)。 举个具体的例子,分别向数据库 db 中插入两条数据,"a=1, b=1" 和 &…
Windows 2003上 SaltStack/Salt 和 psutil 可能存在的问题及解决
背景 (备注:本文是之前在博客园中发表的文章,因为老博客不再维护,把有价值的博文转移到这里。) 之前把 salt 安装在 windows 2003 上,发现无法启动,随之而来的是一个有一个的坑,让我们一起逐个排查。 问题一(salt 无法启动) salt 无法启动,错误结果如图: 解决 这种错误完全无厘头呀,本着相信 salt 的原则,我们看看 p…