之前介绍了Linux的Screen命令,今天介绍一个更为强大的终端工具Tmux。
Tmux 是一个用于在一个终端窗口中运行多个终端会话的工具。它基本能替代nohup以及screen,甚至比它们更为强大:
Screen 的项目大体上已经终止,并且代码中有大量的问题,使用起来很不稳定;
Tmux 是一个活跃的项目,其代码库经常更新,其设计也更好
Tmux 使用的是真正的客户端/服务器模型,而 screen 只是模拟了这种模型的行为;
Tmux能更好的支持分屏功能。
Tmux并不是Linux默认的配置,需要自己安装。在Mac OS中可以使用Homebrew来安装。安装Tmux可以使用brew install tmux命令来完成。
为了使自身的快捷键和其他软件的快捷键互不干扰,同Screen一样,Tmux 提供了一个快捷键前缀。当想要使用快捷键时,需要先按下快捷键前缀,然后再按下快捷键。Tmux 所使用的快捷键前缀默认是组合键 Ctrl-b(同时按下 Ctrl 键和 b 键)。例如,假如你想通过快捷键列出当前 Tmux 中的会话(对应的快捷键是 s),那么你只需要做以下几步:
按下组合键 Ctrl-b (Tmux 快捷键前缀)
放开组合键 Ctrl-b
按下 s 键
Tmux的快捷键前缀与Screen的类似,只不过Screen是Ctrl-a,而Tmux是Ctrl-b。
Tmux可以创建多个会话,每个会话会包含多个窗口,而每个窗口又可以包含多个窗格。
Tmux常用命令如下,我们把Ctrl-b简写为C-b:
tmux --------------> 创建一个tmux会话
tmux ls --------------> 显示已有tmux会话列表(C-b s)
tmux a -t 数字 --------------> 选择tmux会话
C-b c --------------> 创建一个新的窗口
C-b n --------------> 切换到下一个窗口
C-b p --------------> 切换到上一个窗口
C-b l --------------> 切换到最后一个窗口
C-b w --------------> 通过上下键选择当前窗口中打开的会话
C-b 数字 --------------> 直接跳到你按的数字所在的窗口
C-b & --------------> 退出当前窗口
C-b d --------------> 临时断开会话 断开以后,还可以连上的哟:)
C-b " --------------> 分割出来一个窗口(上下分割)
C-b % --------------> 分割出来一个窗口(左右分割)
C-b o --------------> 在小窗口中切换,适合两个窗口的时候使用
C-b (方向键)--------------> 按方向选择小窗,适合多个窗口的时候使用
C-b ! --------------> 关闭所有小窗口
C-b x --------------> 关闭当前光标处的小窗口
C-b t --------------> 钟表,其实可以看作一个屏保
C-b pageup/pagedown-------------->上下翻页,查看历史记录;如果是Mac机器,因为没有pageup和pagedown按键,可以使用command+上下箭头进行翻屏。但实际效果并没有看到历史记录。
C-b , --------------> 修改当前窗口名称