【Python CLI】第一章 CLI 应用程序介绍

系列文章目录

【Python CLI】第一章 CLI 应用程序介绍
【Python CLI】第二章 命令解析
【Python CLI】第三章 格式化输出
【Python CLI】第四章 程序控制台



前言

CLI(command-line interface,命令行接口)是指应用程序提供的在 命令行 用户进行交互的接口。它通常 不支持鼠标 ,用户通过键盘输入命令,程序接收到命令后,依据命令的 选项 和 参数 控制程序执行。

一、命令行、终端、控制台、shell

  • 命令行界面 (CLI) 是 使用文本命令进行交互的用户界面。
  • 终端 (Terminal) = TTY, 终端是 文本输入/输出环境; 终端只是一种用于与计算机进行交互的输入输出设备,其本身并不提供运算处理功能。
  • 控制台 (Console) 是 一种特殊的终端,每一个 CLI 都可以实现属于应用程序的控制台。
  • shell :操作系统提供给 用户界面的应用程序 被叫做 shell,shell可以调用系统 API 执行用户输入的命令并返回结果。

梳理一下:shell 是系统应用,提供了命令行界面,并且可以调用系统API完成命令的执行。终端是命令行界面的包装,控制台是可以由每一个应用程序自己实现的,控制程序功能的特殊终端。

开启命令行界面:

  • window :按下 Windows 徽标键和 R 键 输入 cmd 按下回车键开启
  • Mac OS:打开 终端(terminal)APP即可
  • Linux:
    • 方式1:Linux发行版启动后通常会进入默认的图形界面,和 Mac OS 类似的,会有终端对应的软件。
    • 方式2:调整配置,进入命令行模式

二、CLI 应用程序

CLI 应用程序是通过 命令 + 选项 + 参数 的方式来与用户进行交互,控制程序的运行的,并且程序运行的结果也需要在命令行中显示出来,所以,CLI 应用程序除了完成程序的核心功能之外,还需要来完成 命令的解析 以及在 命令行进行输出 的功能。

除此之外,部分 CLI 应用程序也需要一个控制台来和用户进行交互,控制程序的运行。

下面我们对这三部分进行简单的介绍。

1. 命令解析

一般 CLI 应用程序命令的格式如下:

命令 [选项] [参数]

为了区分选项和参数,约定通常使用 - 做选项的前缀。

使用一个 - + 单个字母 的选项 被称为短选项。
使用两个 - + 单词 的选项被称之为长选项。

长短选项可以对应存在或者单独存在。同时,选项也可以消耗命令行中的参数。

CLI 应用程序通常都有 -h/--help 这组命令用来显示帮助信息,帮助用户了解应用程序的使用方式。

这里对 CLI 应用程序使用方式中的符号做简单说明:

  • 尖括号: <> 表示括号内的内容是必选的,不能忽略,使用时没有尖括号。
  • 方括号: [] 表示里面的元素(参数、值或信息)是可选的,0个、1个或者多个。
  • 花括号: {} 表示参数必须是里面的其中一个值
  • 省略号: 表示当前的参数可以重复。

2. 命令行输出

命令行输入不单单是使用 print 函数进行打印,而是程序获取终端的宽度和高度之后经过计算来格式化的输出内容,使命令行中的输出美观易读。

同时,可以使用不同的高亮和颜色来在命令行进行输出。
可以使用 ANSI 色彩代码来进行高亮和颜色的控制

ANSI 色彩代码

前景(3开头)背景(4开头)颜色ANSI控制码(结束标识\E[0m)
30400黑色\E[30m\E[0m,\E[40m\E[0m
31411红色\E[31m\E[0m,\E[41m\E[0m
32422绿色\E[32m\E[0m,\E[42m\E[0m
33433黄色\E[33m\E[0m,\E[43m\E[0m
34444蓝色\E[34m\E[0m,\E[44m\E[0m
35455紫色\E[35m\E[0m,\E[45m\E[0m
36466天蓝\E[36m\E[0m,\E[46m\E[0m
37477白色\E[37m\E[0m,\E[47m\E[0m

ANSI 其它控制码

控制码说明
\033[0m关闭所有属性,即属性结束标识
\033[01m设置高亮度,即字体加粗、文体强调
\033[03m设置倾斜
\033[04m下划线
\033[05m闪烁
\033[07m反显
\033[08m消隐
\033[09m文字中划线
\033[3nm设置前景色(0 ≤ n ≤ 7)
\033[4nm设置背景色(0 ≤ n ≤ 7)
\033[nA光标上移n行
\033[nB光标下移n行
\033[nC光标右移n行
\033[nD光标左移n行
\033[y;xH设置光标位置
\033[2J清屏
\033[K清除从光标到行尾的内容
\033[s保存光标位置
\033[u恢复光标位置
\033[?25l隐藏光标
\033[?25h显示光标

3. 控制台(console)

控制台是 CLI 应用程序控制的特殊终端,只有部分CLI应用程序有。
控制台其实就是一个循环:等待用户输入 -> 解析用户输入 -> 应用程序执行 -> 展示执行结果 -> 等待用户输入。
当用户按下 Ctrl - D 或者 Ctrl -C 又或者是输入退出的命令之后结束应用程序。


总结

以上就是这一章的主要内容,主要介绍了 CLI 应用程序部分必知必会的内容。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值