Linux终端多任务处理的GNU屏幕的2种替代方法
过去,我们已经写过关于在Linux终端中使用GNU Screen进行多任务的文章。 GNU Screen是这些程序的祖父,但我们可能更喜欢tmux和dvtm + dtach。
Tmux是对GNU Screen的改进改写。 Dvtm是受平铺窗口管理器启发的控制台多路复用器,并且dtach增加了从dvtm会话分离并重新添加到dvtm会话的功能。
Tmux
作为对GNU Screen的重写,tmux提供了许多改进。其中最重要的一些包括客户端服务器模型,该模型可让我们从多个位置连接到tmux会话,以及更简洁的配置文件格式。查阅tmuxs FAQ来发现它与GNU Screen不同的方式列表。
使用以下命令在Ubuntu上安装tmux:
sudo apt-get install tmux
如果我们使用其他发行版,则可能会在发行版程序包管理器中找到它。
要在安装后启动tmux,只需运行tmux命令。与Screen不同,tmux默认带有状态栏。
要打开其他终端窗口,请使用Mod-c键盘快捷键。默认的修饰键组合为Ctrl-b。这意味着我们必须先按Ctrl-b,然后按c来创建一个新窗口。
我们打开的每个新窗口都会出现在状态栏中。默认情况下,tmux一次只在屏幕上显示一个窗口。
以下是一些重要的键盘快捷键,可以入门:
Mod-X终止当前终端。
Mod-n聚焦下一个窗口。
Mod-p聚焦上一个窗口。
Mod-聚焦指定的窗口,其中是0到9之间的数字。
Mod-提示选择一个窗口。
Mod-%将当前窗口水平拆分为两个。
Mod-将当前窗口垂直拆分为两个
要与当前会话分离,请使用Mod-d键盘快捷键。
要重新连接到会话,请运行以下命令:
tmux attach
要获取更多键盘快捷键,请运行man tmux命令或者在Web上阅读tmuxs手册。
DVD与Dtach
与GNU Screen和tmux不同,dvtm不允许我们断开连接并重新连接到会话。我们必须与dtach一起运行dvtm才能从会话中分离并重新连接到会话。
运行以下命令在Ubuntu上安装dvtm和dtach:
sudo apt-get install dvtm dtach
这些程序也应该在其他发行版软件存储库中可用。
运行dvtm命令以启动dvtm。我们会看到一个终端窗口。
要打开其他终端窗口,请使用Mod-c键盘快捷键。默认的修饰键组合为Ctrl-g。这意味着我们需要先按Ctrl-g,然后按c来打开新的终端窗口。
像平铺窗口管理器一样,dvtm将自动布置终端窗口。与其他实用程序不同,默认情况下,它将全部显示在屏幕上。
以下是一些重要的键盘快捷键,可以入门:
Mod-x关闭当前窗口。
Mod-j聚焦下一个窗口。
Mod-k聚焦上一个窗口。
Mod-聚焦指定的窗口,其中是窗口的编号。
Mod-q退出DVD。
有关完整列表,请运行man dvtm命令或者在Web上查看dvtms手册页。
DVDTM还支持鼠标。例如,我们可以单击一个窗口以将其选中。
要脱离dvtm会话并在以后重新添加到该会话,则必须使用dtach命令运行它。要使用dtach启动dvtm,请使用以下命令:
dtach -c /tmp/dvtm-session -r winch dvtm
要与以dtach启动的dvtm会话分离,请使用Ctrl- \键盘快捷键。
要稍后重新连接到dvtm会话,请使用以下命令:
dtach -a /tmp/dvtm-session -r winch
我们也可以使用dtach来运行,分离和重新添加到其他应用程序。