鼠标的发明是一个伟大的创新,它让电脑更接近普通人。但是从程序员和系统管理员的角度来看,在使用电脑工作的时候,一旦手离开了键盘,就会有些分心。作为系统管理员,我的很多工作都需要在终端环境中进行。打开大量选项卡并在多个终端之间切换窗口会减慢我的速度。特别是当我的服务器宕机时,我不能浪费任何时间!Tmux是我日常工作必备的工具之一。我可以使用Tmux搭建一个复杂的开发环境,同时可以在一旁做SSH远程连接。我可以打开许多窗口,将它们分成许多面板,接管和分离会话等。一旦你掌握了Tmux,你就可以放弃鼠标(开玩笑:D)。Tmux(“TerminalMultiplexer”的简称)让我们可以在单屏灵活布局下打开多个终端,协同使用。例如,在一个面板中,我们使用Vim修改一些配置文件,在另一个面板中,我们使用irssi进行聊天,在其余面板中,我们可以跟踪一些日志。然后,我们也可以新开一个窗口升级系统,然后再开一个新窗口通过ssh连接服务器。在这些窗口面板之间导航就像创建它们一样简单。它具有高度可配置性和可定制性,使其成为您思维的延伸。要在Linux/OSX下安装Tmux,您可以编译软件源或通过系统包管理器安装。我推荐使用包管理器,它比编译更好。更快更简单的OSX:#sudobrewinstalltmux#sudoportinstalltmuxDebian/Ubuntu:#sudoapt-getinstalltmuxRHEL/CentOS/Fedora(RHEL/CentOS需要EPEL存储库):$sudoyuminstalltmuxArchlinux:$sudopacman-Stmux与不同的会话一起工作使用Tmux的最佳方式是使用会话,这样你就可以按照你想要的方式将任务和应用程序组织到不同的会话中。如果要更改会话,不需要停止或终止会话中的任何工作。让我们看看这是如何工作的。让我们启动一个名为“session”的会话并运行top命令$tmuxnew-snewsession$top然后键入CTRL-bd以从该会话中分离。要重新附加此会话,请键入:$tmuxattach-session-在tsession之后,您将看到top操作仍在重新连接的会话上运行。一些管理会话的命令:$tmuxlist-session$tmuxnew-session$tmuxattach-session-t$tmuxrename-session-t$tmuxchoose-session-t$tmuxkill-session-t使用不同的窗口在许多情况下,您需要在一个会话中运行多个命令并执行多个任务。我们可以在会话的多个窗口中组织它们。在现代GUI终端(例如iTerm或Konsole)中,一个窗口被认为是一个选项卡。在会话中配置默认??环境后,我们可以在会话中创建任意数量的窗口。窗口就像在会话中运行的应用程序。当我们离开当前会话时它仍然存在。让我们看一个例子:$tmuxnew-smy_session按CTRL-bc这将创建一个新的会话窗口,并且屏幕的光标向它移动。现在您可以在新窗口中运行您的新应用程序。您可以修改当前窗口的名称。在当前示例中,我运行的是top程序,因此top是窗口的名称。如果你想重命名,只需按:CTRL-b状态栏会改变,你就可以重命名当前窗口一旦在一个会话中创建了多个窗口,我们需要一种在它们之间移动的方法。窗口像数组一样组织在一起,每个窗口都标有从0开始的数字,想要快速跳转到其余窗口:CTRL-b<窗口编号>如果我们给窗口命名,我们可以使用以下命令:CTRL-bf也可以列出所有窗口:CTRL-bw按顺序切换到不同的窗口:CTRL-bn(转到下一个窗口)CTRL-bp(转到上一个窗口)想离开一个窗口,你可以输入exit或者:CTRL-b&关闭窗口之前,你需要确认。将窗口分成面板有时您需要在编辑器中工作时查看日志文件。在编辑时跟踪日志真的很有帮助。Tmux允许我们将窗口分成许多面板。例如,我们可以创建一个控制台来监控我们的服务器,并使用编辑器构建一个复杂的开发环境,这样我们就可以边编译边调试。让我们创建另一个Tmux会话来处理面板。首先,如果我们在一个会话中,退出Tmux会话:CTRL-bd开始一个名为“窗格”的新会话:$tmuxnew-spanes你可以水平或垂直拆分窗口,水平拆分输入:CRTL-b"现在你有两个面板,现在我们垂直拆分:CRTL-b%又添加了两个:在它们之间移动:CTRL-b结论我希望本教程对你有用。此外,像Tmuxinator或Tmuxifier这样的工具可以简化创建和加载Tmux会话、窗口和面板,您可以轻松配置Tmux。如果您还没有使用过这些,请尝试一下!来自:http://xmodulo.com/2014/08/improve-productivity-terminal-environment-tmux.html作者:ChristopherValerio译者:su-kaiyao校对:wxy