it-swarm.cn

如何将终端分割成多个“视图”?

vi,如果发出命令:sp,则屏幕将分为两个“视图”,使您可以从同一终端编辑多个文件。

同样,是否有办法在同一终端中打开多个外壳?

285
Justin Ethier

您可以在screen终端多路复用器中进行操作。

  • 垂直分割: ctrla 然后 |
  • 要水平分割: ctrla 然后 S (大写的“ s”)。
  • 要拆分: ctrla 然后 Q (大写的“ q”)。
  • 要从一个切换到另一个: ctrla 然后 tab

注意:分割后,您需要进入新区域并通过发起新的会话 ctrla 然后 c 在可以使用该区域之前。

编辑,基本屏幕用法:

  • 新航站楼: ctrla 然后 c
  • 下一个终端: ctrla 然后 space
  • 上一个终端: ctrla 然后 backspace
  • 第N个航站楼 ctrla 然后 [n](适用于n∈{0,1…9})
  • 使用列表在终端之间切换: ctrla 然后 " (超过10个终端时有用)
  • 发送 ctrla 到基础终端 ctrla 然后 a
376
shellholic

尝试tmux(Terminal MUltipleXer):

tmux screenshot

了解sessionwindowpane之间的差: tmuxnestings

117
Yonatan Maman

如评论中所述,除屏幕外,另一个好的终端多路复用器是 tmux 。您可以参考手册以获得完整的描述和命令参考。一些基本的操作入门:

  • 垂直拆分屏幕: Ctrlb 和 Shift5
  • 水平分割屏幕: Ctrlb 和 Shift"
  • 在窗格之间切换: Ctrlb 和 o
  • 关闭当前窗格: Ctrlb 和 x

您可以通过拆分窗格来实现更复杂的布局。您也可以有多个带有窗格的窗口并在它们之间切换。

  • 创建窗口: Ctrlb 和 c
  • 切换到下一个窗口: Ctrlb 和 n
  • 切换到上一个窗口: Ctrlb 和 p
  • 销毁当前窗口: Ctrlb 和 Shift7
67
dkaragasidis

如果您想要一个仅分割端子¹的程序,则有 splitvt 。有一些程序可以分割终端并执行许多其他操作,例如Screen,Tmux,Emacs等。

¹ 这是您要拆分的终端,而不是Shell。

22

除了在Screen和Tmux上的出色建议之外,如果您正在使用某种窗口管理器,您可能会对 Terminator 感兴趣,您可以水平或垂直分割样式,以及制表符等等。这是一个列表来自作者网站的功能:

  • 将端子排列在网格中
  • 标签
  • 终端的拖放重新排序
  • 很多键盘快捷键
  • 通过GUI首选项编辑器保存多个布局和配置文件
  • 同时键入任意组终端

看一下项目站点上的屏幕截图。

最重要的是,您可以将Terminator与Screen/Tmux结合使用。

20
alemani

Konsole for KDE 具有内置功能

  • Ctrl+( 向左/向右拆分视图

  • Ctrl+) 拆分视图顶部/底部

  • Shift+Tab 将循环浏览拆分视图

  • Shift+Left Arrow/Right Arrow 将通过标签/视图循环当前视图

  • Ctrl+Shift+X 关闭当前视图

9
MrUser

使用 终止符

如果使用主流发行版,则应该可以通过您最喜欢的软件包管理器来获得。

这是唯一的终端多路复用器,复制粘贴可以在窗口的窗格内正常工作。

更新:tilixterminator替代品,几乎与终结符(在复制粘贴也可以正常工作的情况下)完全一样。经过评估后,我仍然坚持使用terminator,但是由于更好的标签处理和更容易的配置(从我的POV中进行)。

7
sjas

Guake + Byob

这里 我写了一个更完整的答案

我是 Guake 的用户,里面有 Byob ,我很高兴,默认情况下使用tmux可能更好screen)作为后端。

三个步骤

  1. 安装它们(在Ubuntu/Debian上不需要PPA, 检查其他发行版

    Sudo apt install guake byobu
    
  2. 将其添加到可用的外壳中(正如我告诉 在此Guake Github问题中 ):

    which byobu | Sudo tee -a /etc/shells
    
  3. 在Guake首选项(guake-prefs)上,选择Byobu作为默认解释器:

    screenshot

选装件

  1. Guake

    1. 取消选中“显示标签栏”,因为您将为此使用Byobu:
      image
    2. 如果快捷方式不起作用,请尝试禁用可能会干扰的Guake快捷键(在我的情况下是 Ctrl+F2 用于垂直分割): screenshot
  2. Byobu

    1. 使用以下方法了解快捷方式 Shift+F1 或 此出色的截屏视频
    2. 通过apropos byobu了解可用的byobu终端命令
    3. 要在Midnight Commander上使用Fn键,请使用 Alt+ ,要么 Shift+F12 禁用byobu F键。

screenshot

6
Pablo A

尝试 垂直分割GNU屏幕

此修补程序为当前版本的GNU屏幕)提供了垂直拆分功能。该功能旨在以与屏幕现有的拆分命令相同的方式起作用,但要垂直而不是水平地划分区域。两种形式的拆分可以按所需的任何组合/数量/顺序一起使用。类似的东西很快就会出现在GNU屏幕4.1中,并且在CVS中已经可以通过此邮件列表线程使用(并且具有包含在以4.0.3-10开头的Debian和Ubuntu屏幕软件包中),还有一个名为ScreenWM的最新项目专门用于与vsplit修补的屏幕配合使用(请查看!)。

2
Narga