什么是CLI
CLI的全称是Command Line Interface,也就是命令行接口的意思,它是以文本的形式处理一行一行的计算机命令。在操作系统中,我们可以通过shell这个命令行界面对操作系统进行交互式访问。
与CLI相对应的是GUI,它的全程是Graphical User Interface,就是图形用户接口,也就是现在操作系统提供的图形界面,正是用了图形界面,计算机才得以普及,越来越多的普通用户才能够轻松地使用计算机。
高速地响应
为什么程序员更喜欢命令行接口,因为CLI相应速度更快,人们通过键盘敲入指令,计算机就可以快速地进行处理。反之,在GUI中,因为只有一个光标和2-3个按键,操作系统需要先计算光标的位置,才能做出相应的事件处理,因此速度上不如CLI。
在图形界面中很复杂的操作,在命令行中可能只需要一个命令就可以实现,此外,人们对于键盘按键的输入速度往往要比移动鼠标快上好几倍。
如果你细心观察,很多图形界面应用的常用操作都提供了快捷键,因为键盘操作实在是太方便了。
处理复杂业务
当我们要处理复杂的任务的时候,你会发现使用鼠标点来点去很费时,这个时候你会发现使用命令行往往会事半功倍。在CLI中,我们可以对文本文件进行任意次数的转换,通过管道操作,我们可以对文本使用不同处理程序进行处理,一连串的操作我们只需要在命令行中通过一条命令就可以实现,这就是CLI的魅力。
脚本处理
如果你熟悉CLI的话,你就会发现你写起脚本也会非常容易,脚本命令大多数情况下就是将多个命令行操作放到一起,形成一个有逻辑的处理过程。
无论你是写bash脚本,还是写一些lua脚本,当你熟悉命令行操作的话,你会对它们感到很亲切,通过命令行和脚本的结合,你会发现你可以处理任何复杂的业务,并且处理起来得心应手。
总结
很多程序员会说现在很多软件都提供了图形操作界面,使用CLI是不是有些落伍和过时了,答案是否定的。
如果你细心观察,你会发现,几乎所有给程序员用的软件,都会提供CLI接口,因为他们知道,CLI才是最适合程序员使用的接口,他们使用起来才最方便。
而且现在很多图形界面底层调用的就是CLI接口,而且有些用图形界面很难去操作的命令,在CLI中可以非常方便地去实现。
如果你平时经常使用mysql和git的命令行接口,你就会发现它们是那么地好用,查询和更改可以非常容易,此外,在命令行中我们可以通过alias进行别名命名,可以实现一个很长的命令只用几个字母就轻松实现。
图形界面不是不好,只是CLI对于程序员来说使用起来更方便,而图形界面更多地是给那些非专业程序员来使用的。