命令行应用程序

../_images/34435690330_11930b5987_k_d.jpg

命令行应用程序,也称为 Console Applications ,是为从文本界面使用而设计的计算机程序,例如 shell .命令行应用程序通常接受各种输入作为参数,通常称为参数或子命令,以及选项,通常称为标志或开关。

一些流行的命令行应用程序包括:

  • grep -纯文本数据搜索实用程序

  • curl -使用URL语法进行数据传输的工具

  • httpie -命令行HTTP客户端,用户友好的curl替换

  • Git -分布式版本控制系统

  • Mercurial -主要用python编写的分布式版本控制系统

Click

click 是一个用于以组合方式创建命令行接口的python包,代码尽可能少。这个“命令行界面创建工具包”是高度可配置的,但附带了良好的默认设置。

docopt

docopt 是一个轻量级的、高度pythonic的包,它允许通过解析POSIX风格的使用说明轻松直观地创建命令行界面。

Plac

Plac 是python标准库的简单包装 argparse 它通过使用声明性接口隐藏了它的大部分复杂性:参数解析器是推断的,而不是强制写下来的。这个模块针对的是那些老练的用户、程序员、系统管理员、科学家,以及一般为自己编写废弃脚本的人,他们选择创建一个命令行界面是因为它快速而简单。

Cliff

Cliff 是用于构建命令行程序的框架。它使用SETUPTOOLS入口点提供子命令、输出格式化程序和其他扩展。框架用于创建多级命令,如 svngit ,其中主程序处理一些基本参数解析,然后调用一个子命令来完成这项工作。

Cement

Cement 是高级CLI应用程序框架。它的目标是为简单和复杂的命令行应用引入一个标准和功能完整的平台,并在不牺牲质量的情况下支持快速的开发需求。水泥是灵活的,它的用例从微观框架的简单到大型框架的复杂。

Python Fire

Python Fire 是一个库,用于从任何Python对象自动生成命令行接口。它可以帮助从命令行更容易地调试Python代码,创建到现有代码的CLI接口,允许您在repl中交互地探索代码,并简化Python和bash(或任何其他shell)之间的转换。