Linux命令行与图形用户界面

权衡利弊

本文全部是关于决定何时使用Linux命令行以及何时使用图形应用程序。

有些人总是更倾向于使用终端窗口,而另一些人更喜欢看似更简单的视觉工具。

没有魔法球指出你应该使用一种工具而不是另一种工具,并且根据我的经验,有相当部分使用这两种工具的充分理由。

在某些情况下,图形应用程序是一个明显的选择。 例如,如果您正在给朋友写信,那么像LibreOffice Writer这样的工具要比在vi或emacs等命令行编辑器中输入字母要好得多。

LibreOffice Writer具有良好的WYSIWYG接口,提供了很好的布局功能,可以添加表格,图像和链接,并且可以在最后检查文档的拼写。

考虑到这一点,你可以想到为什么你必须使用命令行的原因吗?

事实上,很多人都没有使用终端,因为您可以轻松完成大部分任务,而无需使用终端。 大多数普通Windows用户可能甚至不知道存在命令行选项。

命令行通过图形用户界面提供的是灵活性和强大功能,在许多情况下,使用命令行实际上比使用图形工具更快。

例如采取安装软件的行为。 在Ubuntu中,表面上看起来似乎是安装作为操作系统一部分安装的软件的完美工具。 然而,与命令行相比,软件管理器加载缓慢并且搜索繁琐。

使用Linux命令行,您可以使用apt命令搜索软件,安装软件,删除软件并相对容易地添加新的存储库。 你可以保证你什么时候使用apt命令,你可以看到存储库中的所有应用程序,而软件管理器则没有。

一般来说,使用图形用户界面的应用程序非常适合做基础知识,但命令行工具提供了访问功能来做更多的事情。

例如,如果您想查看哪些进程在Ubuntu中运行,您可以运行系统监视器工具。

系统监视工具显示每个进程,进程正在运行的用户,CPU使用百分比,进程ID,内存和进程的优先级。

导航系统监视器应用程序非常简单,只需点击几下鼠标,您就可以获得有关每个进程的详细信息,您可以终止一个进程并过滤进程列表以显示不同的信息。

表面上看起来很棒。 命令行可以提供什么,系统监视器不能。 好吧, ps命令可以显示所有进程,显示除会话负责人之外的所有进程以及除会话负责人之外的所有进程以及与终端无关的进程。

ps命令还可以显示与此终端或任何其他终端关联的所有进程,将输出限制为仅运行进程,仅显示特定命令的进程,或者显示特定用户组或用户。

总的来说,有数百种不同的方式来使用ps命令来格式化,查看和显示系统上运行的进程列表,而这只是一个命令。

现在再添加一个事实,即可以管理该命令的输出并将其与其他命令一起使用。 例如,您可以使用sort命令对输出进行排序 ,使用cat命令将输出写入文件或使用grep命令筛选输出。

实质上,命令行工具通常更有用,因为它们拥有如此多的交换机,以至于将所有这些交换机都包含在图形应用程序中是不可能的或不便的。 出于这个原因,图形工具倾向于包含最常用的功能,但要获得命令行更好的所有功能。

作为另一个例子,一个命令行工具比一个图形工具更有用,可以想象一个大型的文本文件,这个文件的大小是几百兆甚至千兆字节。 您如何使用图形应用程序查看该文件的最后100行?

图形应用程序将要求您加载文件,然后向下翻页或使用键盘快捷键或菜单选项转到文件末尾。 在终端内使用tail命令和假设图形应用程序具有高效的内存并且一次只加载一定数量的文件,在命令行中查看文件的结尾比通过命令行快得多图形编辑器。

迄今为止,似乎除了写字母之外,命令行优于使用图形用户界面,当然这是不真实的。

您绝对不会使用命令行编辑视频,并且您更有可能使用图形音频播放器设置播放列表并选择想要播放的音乐。 图像编辑也明显需要图形用户界面。

当你只有一把锤子时,所有东西看起来都像钉子。 但是在Linux中你不仅有锤子。 在Linux中,你可以想象得到所有的工具。

如果你对学习命令行毫无兴趣,那么你可以通过使用可用的图形工具来获得,但如果你确实想学习一点点,那么一个好的开始就是使用本指南,它突出显示了用于导航的10个基本命令文件系统