假设我只有一个控制台,是否可以模拟多个控制台/会话?
我正在寻找 linux 命令/方法,而不是 ubuntu/debian 特定的。
#console1
$ ..
#console2
$ console_switch 2
$ ..
#console1 again
$ console_switch 1
$ ..
Run Code Online (Sandbox Code Playgroud)
有没有像这样的东西,即使是作为一个包?
找到包“screen”,但在切换之间不保留输出。
和终端tmux
多路复用screen
器因此很受欢迎。通过垂直/水平分割,可以同时看到多个窗口;例如,Ctrl-B "
在 tmux 中。甚至可以在窗口之间复制和粘贴文本。
Emacs 编辑器允许再次在其多个缓冲区 \xe2\x80\x93 中运行交互式 shell,屏幕上有多个缓冲区,并在它们之间进行复制/粘贴。Vim 也是如此(使用“ :terminal
”命令),Neovim 中也存在类似但不完全相同的功能。(在我 5 年前的测试中,Neovim 的 :terminal 工作得很好,而 Emacs 的终端仿真似乎相当缺乏。)
tmux/screen 的一个更简单的替代方案是dtach
,它不执行完整的终端仿真,而只允许分离/重新连接,因此保留之前的输出。(但是,这也意味着在全屏程序中分离将无法正常工作。)
Heirloom 工具箱似乎提供了shl
Unix SVR3 中存在的“shell 层”版本(不久后就消失了,但仍然存在于 Unix SVR3 中stty swtch
)。然而,我根本无法获得构建工具箱,而且我不确定现代 Linux 内核是否对shl
. 不过,如果它有效,它几乎与您的示例中的一样。
最后,您可以将多个 shell 进程作为作业运行:
\n$ bash\n $ suspend\n$ bash\n $ suspend\n$ jobs\n[1]- Stopped bash\n[2]+ Stopped bash\n
Run Code Online (Sandbox Code Playgroud)\n
归档时间: |
|
查看次数: |
8979 次 |
最近记录: |