命令行与GUI,你更喜欢用哪个?

有了图形界面后,我们就不用再记忆复杂的命令,据统计,80%的常规任务都可以在图形界面下完成。尽管如此,命令行仍然有它独特的优势,虽然一般用户会将命令行认为是史前动物,但与图形界面相比,它确实能给你提供更多的选择。

事实上,对于许多管理任务来说,使用命令行比图形界面还更简单,查看我的Bash历史记录后,我发现至少有五种情况我更喜欢使用命令行,而不是图形界面。

1、文件管理

不管你是想复制,移动还是想删除文件,Bash shell总是比KDE的Dolphin和Gnome的Nautilus更顺手,这些图形界面文件管理工具会不停地弹出提示对话框,它总把你当菜鸟对待。此外,菜单和工具条很少有符号链接的入口,大部分桌面用户也很少知道它们的存在,或是何时使用它们。

相比之下,使用命令就简单多了,如复制命令cp,首先,你可以决定是否要显示确定提示,如文件覆盖的确认,如果你想归档或备份文件,你可以选择创建符号链接,而不是复制,也不用考虑是否要保存文件属性。其它文件管理命令的功能一样很丰富。

移动大量文件时,桌面很可能无法动弹,你只能等待移动完成,在此期间你无法做其它事情,更糟的是,你还无法保证移动操作就会成功,这些问题在命令行下根本就不会出现。

2、列出文件和属性

和文件管理命令类似,ls命令比任何图形界面工具提供的内容都多,的确,ls不能显示文件类型图标,但可以用颜色和符号代表不同的文件类型。

Ls也具有图形界面工具的所有过滤器,包括是否显示隐藏和备份文件,也可以按扩展名,文件大小,修改时间和文件版本排序。

我更喜欢ls,特别是它的-l和-g参数,它们让文件的所有属性全部在一行上显示出来了。

相比之下,使用图形工具时,你想要在一个界面查看所有属性是不可能的,就目前最新的图形界面工具,查看文件属性有时也需要鼠标点击多次。

3、使用crontab调度作业

有些应用程序可以直接秒杀图形界面,如Apache,它有数百个配置选项,现在虽有图形界面的配置工具,但我一般不会使用它,另一个例子是crontab,我研究过它的图形界面工具crontag,我的结论是,它永远取代不了命令行工具。

4、安装软件包

不管是apt-get还是yum,都提供了相应的图形操作界面,我想说它们的确是给菜鸟用的,当你需要处理大量文件时,不管是Synaptic还是Ubuntu软件中心都帮不上忙。

此外,如果你想在用户登录后立即安装点什么,通常会与更新小程序发生冲突,这个时候你要么等待,要么决定停止其中一个。

即使在最佳状态,图形界面软件包管理工具与命令行比起来也没有足够的优势,命令行工具简单易学,返回的信息更丰富,尤其在基于.deb的系统上更是如此,对于很多人而言,一提到命令行就感到很恐惧,一看到图形界面总感觉很轻松,这是因为人的惯性思维造成的,其实只要坚持使用命令行,要不了多久,你就会想抛弃图形界面,要不然这个世界也不会出现这么命令控。

5、图形界面工具功能不完整

有时候使用图形界面操作确实比较惬意,但有时你不得不拿起命令行工具,因为图形工具还没有进化到可以完全取代命令工具的地步,有些操作在图形界面是根本就没有实现。

图形界面本身就是为一般用户设计的,管理员最好还是使用命令,这是没有办法的事情,因为在所有发行版中,图形界面下提供的管理工具其功能本身就很有限。

事实上,很多命令行工具压根儿就没有设计图形界面,包括NIS,SSH,modprobe等,特别是那些涉及到系统参数设置,网络设置,系统安全设置等管理工作,命令行绝对是可以100%助你完成任务,而图形界面工具就很难说了。

就我个人而言,我非常喜欢Debian的dpkg-reconfigure,它提供了一个基于文本的界面重新配置主要的子系统,如视频或区域设置,但我不知Ubuntu为何要想方设法贬低dpkg-reconfigre,何况Ubuntu的图形工具还没有它好用。

最好的工具

虽然命令行是如此的优秀,但仍然只有少部分Linux桌面用户喜欢它,奇怪的是,那些长期依赖于图形界面的人却以专家身份自居,我都感到很羞愧,简直有点荒谬。不可否认,在需要可视化显示时,图形界面尤其特有的优势,这也是我对LaTeX不感冒的原因,事实上,如果你愿意坚持,使用LaTeX一样可以排好版,当然有人这么做,我不使用它是因为我觉得使用图形界面工具更节省时间。

但现在出现了一个很大的问题,几乎所有Linux厂商都在努力消灭命令行,他们希望用户永远停留在图形界面,甚至有人建议将图形桌面写入Linux内核,我不知道这一天是否会到来,因为我喜欢的那些命令行工具也许会突然停止开发,我想我要在这里控诉这些厂商,一定有很多人顶我吧。

相关推荐