Для этого популярны мультиплексоры tmux
и screen
Terminal. Можно увидеть несколько окон одновременно, разделив их по вертикали / горизонтали; например, Ctrl-B " в tmux. Есть даже возможность копировать и вставлять текст между окнами.
Редактор emacs
позволяет запускать интерактивные оболочки в нескольких буферах - опять же, с несколькими буферами на экране и с копированием / вставкой между ними.
Более простой альтернативой tmux/screen является dtach
, который не выполняет полную эмуляцию терминала, а только позволяет отсоединять / повторно подключать, поэтому предыдущий вывод остается. (Однако это также означает, что отсоединение внутри полноэкранной программы не будет работать хорошо.)
Инструментальная панель семейной реликвии, по- видимому, предоставляет версию shl
, "слоев оболочки", которые присутствовали в Unix SVR3 (и вскоре умерли, но все еще остаются в stty swtch
). Однако я не могу собрать инструментарий для сборки, и я не уверен, что современные ядра Linux имеют необходимую поддержку для shl
. Однако, если бы это сработало, это было бы почти так же, как в вашем примере.
Наконец, вы можете иметь несколько процессов оболочки, работающих как задания:
$ bash
$ suspend
$ bash
$ suspend
$ jobs
[1]- Stopped bash
[2]+ Stopped bash