谁需要 GUI？—— Linux 终端生存之道
=================================================

完全在 Linux 终端中生存并不容易，但这绝对是可行的。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-1-100669790-orig.jpg)

### 处理常见功能的最佳 Linux shell 应用

你是否曾想像过完完全全在 Linux 终端里生存？没有图形桌面，没有现代的 GUI 软件，只有文本 —— 在 Linux shell 中，除了文本还是文本。这可能并不容易，但这是绝对可行的。[我最近尝试完全在 Linux shell 中生存30天][1]。下边提到的就是我最喜欢用的 shell 应用，可以用来处理大部分的常用电脑功能（网页浏览、文字处理等）。这些显然有些不足，因为纯文本操作实在是有些艰难。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-2-100669791-orig.png)

### 在 Linux 终端里发邮件

要在终端里发邮件，选择有很多。很多人会推荐 mutt 和 notmuch，这两个软件都功能强大并且表现非凡，但是我却更喜欢 alpine。为何？不仅是因为它的高效性，还因为如果你习惯了像 Thunderbird 之类的 GUI 邮件客户端，你会发现 alpine 的界面与它们非常相似。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-3-100669837-orig.jpg)

### 在 Linux 终端里浏览网页

我有一个词要告诉你：[w3m][5]。好吧，我承认这并不是一个真实的词。但 w3m 的确是我在 Linux 终端的 web 浏览器选择。它能够很好的呈现网页，并且它也足够强大，可以用来在像 Google+ 之类的网站上发布消息（尽管方法并不有趣）。 Lynx 可能是基于文本的 Web 浏览器的事实标准，但 w3m 还是我的最爱。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-4-100669838-orig.jpg)

### 在 Linux 终端里编辑文本

对于编辑简单的文本文件，有一个应用是我最的最爱。不！不！不是 emacs，同样，也绝对不是 vim。对于编辑文本文件或者简要记下笔记，我喜欢使用 nano。对！就是 nano。它非常简单，易于学习并且使用方便。当然还有更多的软件具有更多功能，但 nano 的使用是最令人愉快的。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-5-100669839-orig.jpg)

### 在 Linux 终端里处理文字

在一个只有文本的 shell 之中，“文本编辑器” 和 “文字处理程序” 实在没有什么大的区别。但是像我这样需要大量写作的，有一个专门用于长期写作的软件是非常必要的。而我最爱的就是 wordgrinder。它由足够的工具让我愉快工作——一个菜单驱动的界面（使用快捷键控制）并且支持 OpenDocument、HTML 或其他等多种文件格式。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-6-100669795-orig.jpg)

### 在 Linux 终端里听音乐

当谈到在 shell 中播放音乐（比如 mp3，ogg 等），有一个软件绝对是卫冕之王：[cmus][7]。它支持所有你想得到的文件格式。它的使用超级简单，运行速度超级快，并且只使用系统少量的资源。如此清洁，如此流畅。这才是一个好的音乐播放器的样子。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-7-100669796-orig.jpg)

### 在 Linux 终端里发送即时消息

当我在想如果可以在终端里发送即时消息会是什么样子的时候，我的思绪瞬间爆发了。你可能知道 Pidgin——一个支持多种协议的 IM 客户端，它也有一个终端版，叫做“[finch][8]”，你可以使用它来同时链接多个网络、同时和几个人聊天。而且，它的界面也和 Pidgin 极为相似。多么令人惊叹啊！想要使用 Google 环聊（Google Hangouts）就试试 [hangups][9]。它有一个非常漂亮的分页式界面，并且效果非常好。认真来说，除了一些可能需要的 emoji 表情和嵌入式图片外，在终端里发送即时消息真的是一个很好的体验。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-8-100669797-orig.jpg)

### 在 Linux 终端里发布推文

这不是开玩笑！由于 [rainbowstream][10] 的存在，我们已经可以在终端里发布推文了。尽管我时不时遇到一些 bug，但整体上，它工作得很好。虽然没有网页版 Twitter 或官方移动客户端那么好用，但这是一个终端版的 Twitter，来试一试吧。尽管它的功能还未完善，但是用起来还是很酷，不是吗？

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-9-100669798-orig.jpg)

### 在 Linux 终端里看 Reddit 新闻

不管如何，在命令行中享受 Reddit 新闻时间真的感觉很棒。使用 rtv 真是一个相当愉快的体验。不管是阅读、评论，还是投票表决，它都可以。其体验和在网页版有一定相似。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-10-100669799-orig.jpg)

### 在 Linux 终端里管理进程

可以使用 [htop][12]。与 top 相似，但更好用、更美观。有时候，我打开 htop 之后就让它一直运行。没有原因，就是喜欢！从某方面说，它就像将音乐可视化——当然，这里显示的是 RAM 和 CPU 的使用情况。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-11-100669800-orig.png)

### 在 Linux 终端里管理文件

在一个纯文本终端里并不意味着你不能享受生活之美好。比方说一个出色的文件浏览和管理器。这方面，[Midnight Commander][13] 是很好用的。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-12-100669801-orig.png)

### 在 Linux 终端里管理终端窗口

如果要在终端里工作很长时间，就需要一个多窗口终端了。它是这样一个软件 —— 可以将用户终端会话分割成一个自定义网格，从而可以同时使用和查看多个终端应用。对于 shell，它相当于一个平铺式窗口管理器。我最喜欢用的是 [tmux][14]。不过 [GNU Screen][15] 也很好用。学习怎么使用它们可能要花点时间，但一旦会用，就会很方便。

![](http://core0.staticworld.net/images/article/2016/07/linux-terminal-13-100669802-orig.jpg)

### 在 Linux 终端里进行讲稿演示

这类软件有 LibreOffice、Google slides、gasp 或者 PowerPoint。我在讲稿演示软件花费很多时间，很高兴有一个终端版的软件。它称做“[文本演示程序（tpp）][16]”。很显然，没有图片，只是一个使用简单标记语言将放在一起的幻灯片展示出来的简单程序。它不可能让你在其中插入猫的图片，但可以让你在终端里进行完整的演示。

--------------------------------------------------------------------------------

via: http://www.networkworld.com/article/3091139/linux/who-needs-a-gui-how-to-live-in-a-linux-terminal.html#slide1

作者：[Bryan Lunduke][a]
译者：[GHLandy](https://github.com/GHLandy)
校对：[jasminepeng](https://github.com/jasminepeng)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](https://linux.cn/) 荣誉推出

[a]: http://www.networkworld.com/author/Bryan-Lunduke/
[1]: http://www.networkworld.com/article/3083268/linux/30-days-in-a-terminal-day-0-the-adventure-begins.html
[2]: https://en.wikipedia.org/wiki/Mutt_(email_client)
[3]: https://notmuchmail.org/
[4]: https://en.wikipedia.org/wiki/Alpine_(email_client)
[5]: https://en.wikipedia.org/wiki/W3m
[6]: http://cowlark.com/wordgrinder/index.html
[7]: https://en.wikipedia.org/wiki/Cmus
[8]: https://developer.pidgin.im/wiki/Using%20Finch
[9]: https://github.com/tdryer/hangups
[10]: http://www.rainbowstream.org/
[11]: https://github.com/michael-lazar/rtv
[12]: http://hisham.hm/htop/
[13]: https://en.wikipedia.org/wiki/Midnight_Commander
[14]: https://tmux.github.io/
[15]: https://en.wikipedia.org/wiki/GNU_Screen
[16]: http://www.ngolde.de/tpp.html
