如何使用Tmux提高终端环境下的效率

鼠标的发明是了不起的创新,它让电脑更加接近普通人。但从程序员和系统管理员的角度,使用电脑工作时,手一旦离开键盘,就会有些分心。

作为一名系统管理员,我大量的工作都需要在终端环境下。打开很多标签,然后在多个终端之间切换窗口会让我慢下来。尤其是当我的服务器出问题的时候,我不能浪费任何时间!

如何使用Tmux提高终端环境下的效率

Tmux是我日常工作必要的工具之一。我可以借助Tmux构建出复杂的开发环境,同时还可以在一旁进行SSH远程连接。我可以开出很多窗口,将其拆分成很多面板,接管和分离会话等等。掌握了Tmux之后,你就可以扔掉鼠标了(只是个玩笑:D)。

Tmux("Terminal Multiplexer"的简称)可以让我们在单个屏幕的灵活布局下开出很多终端,我们就可以协作地使用它们。举个例子,在一个面板中,我们用Vim修改一些配置文件,在另一个面板,我们使用irssi聊天,而在其余的面板,可以跟踪一些日志。然后,我们还可以打开新的窗口来升级系统,再开一个新窗口来进行服务器的ssh连接。在这些窗口面板间浏览切换和创建它们一样简单。它的高度可配置和可定制的,让其成为你心中的延伸

tmux 1.8 发布,Linux 终端复用器

Tmux:终端复用器

Linux/OSX下安装Tmux

你可以通过编译软件源或者通过系统包管理器的方式安装,我建议使用包管理器,这样比编译更快更简单

OSX:

# sudo brew install tmux

# sudo port install tmux

Debian/Ubuntu:

# sudo apt-get install tmux

RHEL/CentOS/Fedora(RHEL/CentOS 要求 EPEL repo):

$ sudo yum install tmux

Archlinux:

$ sudo pacman -S tmux

使用不同会话工作

使用Tmux的最好方式是使用会话的方式,这样你就可以以你想要的方式,将任务和应用组织到不同的会话中。如果你想改变一个会话,会话里面的任何工作都无须停止或者杀掉。让我们来看看这是怎么工作的。

让我们开始一个叫做"session"的会话,并且运行top命令

$ tmux new-s new session

$ top

然后输入CTRL-b d从此会话脱离,想要重新连接此会话,需输入:

$ tmux attach-session -t session

之后你会看到top操作仍然运行在重新连接的会话上。

一些管理sessions的命令:

$ tmux list-session

$ tmux new-session <会话名>

$ tmux attach-session -t <会话名>

$ tmux rename-session -t <会话名>

$ tmux choose-session -t <会话名>

$ tmux kill-session -t <会话名>

使用不同的窗口工作

很多情况下,你需要在一个会话中运行多个命令,执行多个任务。我们可以在一个会话的多个窗口里组织他们。在现代的GUI终端(比如 iTerm或者Konsole),一个窗口被视为一个标签。在会话中配置了我们默认的环境之后,我们就能够在一个会话中创建许多我们需要的窗口。窗口就像运行在会话中的应用程序,当我们脱离当前会话的时候,它仍在持续,让我们来看一个例子:

$ tmux new-s my_session

如何使用Tmux提高终端环境下的效率

按下CTRL-b c

这将会创建一个新的窗口,然后屏幕的光标移向它。现在你就可以在新窗口下运行你的新应用。你可以修改你当前窗口的名字。在目前的例子里,我运行的top程序,所以top就是该窗口的名字

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/17425.html