Как отобразить более 1 терминала одновременно


46

Иногда, когда я работаю, я использую более одного терминала, и мне неудобно переключаться между ними, когда все они вызываются с помощью Ctrl+ Alt+ T. Есть ли какая-либо программа или терминал, который после запуска предоставил бы мне 4 независимых терминала, каждый из которых занимал бы ¼ экрана, позволяя легко переключаться между ними, например, с помощью Tabклавиши?


2
Просто измените размеры окон терминала, чтобы они все подходили к углу экрана. Терминал также может иметь вкладки, которые могут помочь. Щелкните правой кнопкой мыши по окну и выберите New Tab.
TheWanderer

2
[TAB]Клавиша уже используется для автоматического сдачи в терминале. Если бы вы могли выбирать экземпляры, например [ALT]+[TAB], было бы проще использовать позиционированные окна вместо этого, как предлагает @ Zacharee1.
Петр Нерлих,

2
Если вы очень серьезно относитесь к этому, проверьте некоторые оконные менеджеры, такие как Xmonad или Awesome .
leftaround около

1
Что плохого в том, чтобы просто открыть новый терминал и alt-tab?
psusi

Мне придется открывать несколько терминалов и изменять их размер каждый раз, когда я начинаю работать. Это убило бы одно из лучших преимуществ Linux: настраиваемость.
Аль Банди

Ответы:


85

Вам нужен терминатор :

sudo apt-get install terminator

Терминатор 4 окна

Для четырех терминалов при запуске выполните следующее:

  • Стартовый терминатор
  • Сплит терминал Ctrl+ Shift+O
  • Разделить верхний терминал Ctrl+ Shift+O
  • Разделить нижний терминал Ctrl+ Shift+O
  • Откройте Настройки и выберите Макеты
  • Нажмите Addи введите полезное имя макета иEnter
  • Закрыть настройки и терминатор
  • Откройте Терминатор с помощью этой команды:

    terminator --maximise --layout=<your_layout_name>
    

    или с помощью этой команды:

    terminator --maximise --borderless --layout=<your_layout_name>
    

Прыгайте между окнами терминала с помощью Ctrl+ Tab.

Вы можете назначить свою персональную команду терминатора на Ctrl+ Alt+ Tв Настройки клавиатуры> Ярлыки. (Thx @Wilf )

Конечно, вы также можете создать terminator.desktopфайл. Скопируйте исходный файл рабочего стола и внесите изменения:

cp /usr/share/applications/terminator.desktop ~/.local/share/applications/
nano ~/.local/share/applications/terminator.desktop

1
Обратите внимание, что вы также можете назначить terminator ...команду для Ctrl + Alt + T в Настройки клавиатуры> Ярлыки
Уилф

Есть ли способ установить, какое окно терминала является активным после запуска ?? Когда я запускаю его, активное окно находится внизу, и я хотел бы, чтобы окно активного терминала было вверху, но я не могу справиться с этим.
Аль Банди

2
К сожалению, я не могу рекомендовать Терминатор в эти дни. Каким бы классным он ни был, проект теперь практически не поддерживается и использует древнюю (~ 4 года) версию VTE (это виджет, выполняющий фактическую эмуляцию терминала). То есть, хотя здорово иметь много окон рядом друг с другом, то, что происходит внутри каждого окна, будет страдать от многих проблем. См. Также bugs.launchpad.net/terminator/+bug/1030562
egmont

2
@AB Да, я знаю, эта ветвь содержит мою работу :) Хотя он использует самый последний и гораздо лучший VTE, пользовательский интерфейс вокруг него (сам Terminator) в значительной степени находится в процессе разработки с довольно многими ошибками, которых нет в версия по умолчанию Gtk + -2. Ваш ответ с apt-get install terminatorкомандой явно относится к версии Gtk + -2, которая использует древний VTE. Для справки действительно полезно упомянуть версию Gtk + -3, которая еще не стабильна и еще не поставляется Ubuntu, но кто-то может попробовать.
egmont

4
Вам нужен Терминатор . Эпическая.
maryisdead

13

Вы можете запустить 4 терминала с помощью Ctrl+ Alt+ Tи установить их по краям экрана с помощью Ctrl+ Alt+ Numpad[1,3,7,9]или влево / вправо с помощью Ctrl+ Alt+ Numpad[4/6]или сверху / снизу Ctrl+ Alt+ Numpad[8/2]и переключиться с Alt+ Tabна ОДИН терминал и с помощью Alt+ key above Tabмежду терминалами, если один активен ,

Или

Вы можете использовать вкладки с Ctrl+ Shift+ Tи переключаться между терминалами с помощью Alt+ Page-Up/ Page-Down.


3
В какой среде рабочего стола работает Ctrl + Shift + Numpad?
Уилф

У меня стандартная установка Ubuntu с Unity
DEN

Это Ctrl + Alt + Numpad
Адам Солтыс

9

В качестве другой альтернативы я бы предложил использовать byobu.

Byobu - текстовый оконный менеджер и терминальный мультиплексор с открытым исходным кодом GPLv3. Первоначально он был разработан для предоставления элегантных улучшений в функциональном, простом, практичном GNU Screen для дистрибутива сервера Ubuntu. Byobu теперь включает расширенные профили, удобные сочетания клавиш, утилиты конфигурирования и уведомления о состоянии системы с возможностью переключения как для оконного менеджера GNU Screen, так и для более современного терминального мультиплексора Tmux, и работает на большинстве дистрибутивов Linux, BSD и Mac.

Преимущество в том, что оно основано на тексте, то есть вы можете использовать его без графического окружения! Это очень полезно при работе с серверами, которые часто не имеют графического интерфейса.

У вас даже есть нижняя строка состояния с большим количеством полезной информации, такой как дата / время, средняя загрузка и т. Д.

Ярлыки, которые вы должны знать, если вы используете Byobu:

  • F2 создает новую вкладку.
  • Shift+ F2создает новую разделенную вкладку (это разделяет вашу текущую вкладку по горизонтали).
  • F3и F4переключаться между вкладками.
  • F9 настроить бёбу.

sudo apt-get install byobu установит Byobu.

В качестве бонуса, будучи терминальным мультиплексором, это означает, что вы не потеряете сеанс и свои вкладки, если вы по ошибке закрыли терминал. И вы можете запустить byobuв другом терминале и получить синхронизированные выходы.

Существуют даже сценарии для сохранения макетов, если вы хотите сохранить сеанс при перезагрузке.


1
URL-адрес домена byobu изменен на byobu.org
Виджей

7

Лично я использую emacsс M-x ansi-termили в M-x shellзависимости от того, что я делаю.

Но если вы ищете только терминальный мультиплексор, то всегда есть тихо почитаемый tmux:

https://github.com/tmux/tmux

Изменить: JoKeR указал, что вы можете установить tmuxс apt-get:

$ sudo apt-get install tmux

1
Вы можете установить tmux с помощью: sudo apt-get install tmuxвы должны упомянуть, что я думаю.
JoKeR

Никогда не использовал tmuxсебя, просто знаю об этом. Спасибо за разъяснение, хотя я поставлю это сверху.
Грант Хулегард

5

Просто измените размеры окон терминала, чтобы они все подходили к углу экрана. Терминал также может иметь вкладки, которые могут помочь. Щелкните правой кнопкой мыши по окну и выберите New Tab.

Вот как сделать окна способными изменять размеры по углам:

  1. Беги sudo apt-get install compizconfig-settings-manager.
  2. Запустите sudo ccsmили выполните поиск ccsmв Unity Dash.
  3. Прокрутите вниз, пока не найдете Grid, под Window Management. Убедитесь, что он включен.
  4. Перейдите на Corners / Edgesвкладку и измените Cornerпараметры в соответствующих углах.

1
Тогда я не могу одновременно просматривать все вкладки, и мне приходится изменять размер при каждом открытии терминала.
Аль Банди

@ Банди, есть способ сделать так, чтобы размер окна уменьшался до четверти экрана при перетаскивании в угол. Позвольте мне найти это, и я добавлю это к своему ответу.
Странник

3

Вы можете использовать tmux , терминальный мультиплексор.

sudo apt-get install tmux

Для четырех панелей вы можете использовать этот скрипт 4pSession, создайте скрипт с

mkdir -p ~/bin
touch ~/bin/4pSession
chmod +x ~/bin/4pSession
nano ~/bin/4pSession

и добавьте код ниже

#!/usr/bin/env bash

# if the session is already running, just attach to it.
tmux has-session -t 4panel
if [ $? -eq 0 ]; then
  sleep 1
  tmux attach -t 4panel
else 
  tmux new-session -d -s 4panel
  tmux split-window -v
  tmux split-window -h
  tmux select-pane -t 0
  tmux split-window -h
  tmux select-pane -t 0
  tmux -2 attach-session -d
fi

Чем вы можете создать файл рабочего стола:

nano ~/.local/share/applications/tmux.desktop

с этим содержанием:

[Desktop Entry]
Name=tmux
Comment=a terminal multiplexer
Exec=/<path_to_script>/4pSession
Icon=terminal
Terminal=true
Type=Application
Categories=Terminal;

Перемещайтесь между панелями с помощью Ctrl+ Bи, или, или, или

введите описание изображения здесь


1

Мой грубый вклад в этот вопрос: установите wmctrlи настройте скрипт, который открывается и размещает четыре окна терминала на вашем экране. Сначала выясните размер экрана с помощью, xwininfo -rootа затем настройте -eпараметры (они в следующем порядке: 0, x-position, y-position, width, height). Числа, которые я использую ниже, являются просто примером

#!/bin/bash
# Author: Serg Kolo
# Date: 2/18/2015
# Description: Open 4 terminals and position them






gnome-terminal -t WINDOW-ONE &
gnome-terminal -t WINDOW-TWO &
gnome-terminal -t WINDOW-THREE &
gnome-terminal -t WINDOW-FOUR &

sleep 0.5
wmctrl -r WINDOW-ONE -e 0,0,0,500,250 &
sleep 0.5
wmctrl -r WINDOW-TWO -e 0,0,384,500,250 &
sleep 0.5
wmctrl -r WINDOW-THREE -e 0,500,0,500,250 &
sleep 0.5
wmctrl -r WINDOW-FOUR -e 0,500,384,500,250 &

Вы можете привязать это как ярлык, например, к Ctrl + I или как угодно. Еще одна идея, без установки wmctrl, это открыть 4 --geometry=варианта


0

Я настоятельно рекомендую tmux. Он предлагает множество настроек и полную независимость от мыши (если это проблема). Вы можете разделять экраны по горизонтали, вертикали, переключаться между ними несколькими нажатиями клавиш, оставлять сеансы открытыми, а затем повторно подключаться к ним и т. Д.


Пожалуйста, объясните, как это сделать (см. Как мне написать хороший ответ? ).
Дэвид Фёрстер

1. Если вы используете centos, вы можете перейти по ссылке, чтобы получить последнюю версию и установить ее. Если вы получаете ошибки в отношении зависимостей, я наткнулся на отличное руководство: ссылка 2. Если вы работаете в Ubuntu, это просто: sudo apt-get install tmux 3. Если вам удобно компилировать пакеты, то исходный код находится на sourceforge: ссылка
Прыгающий кролик

1
Пожалуйста, измените свой ответ, если вы хотите добавить информацию.
Дэвид Фёрстер

0

Когда открыто 4 окна терминала, и во время работы в одном из них я могу просто переключаться между ними с помощью Alt + `(левая галочка), если хотите использовать клавиатуру, или просто нажимать на значок запуска терминала, чтобы вызвать все его окна и нажмите на выбранный.

введите описание изображения здесь

Моя установка - Ubuntu 14.04, с рабочим столом по умолчанию (Unity 3D) и обновленным до настоящего времени.

Я не понимаю, почему люди все усложняют и устанавливают сторонние продукты, когда стандартная установка Ubuntu уже предоставляет эту возможность.


0

Вы также можете использовать Gnu Screen для этого, и использовать вертикальное и горизонтальное разделение.

Вы можете поместить их в свой ~/.screenrcконфигурационный файл. Я был в состоянии разделить, используя большинство экранов GNU, с правильными настройками файла .screenrc.

Некоторая комбинация ниже должна сделать вас в вашем .screenrc.

screen -t tl 1 bash
split 
focus down
screen -t bl 3 bash
split -v
focus down
screen -t br 4 bash
select 1
split -v
focus down
screen -t tr 2 bash

У меня он был установлен на 6 экрана один раз. вот мой остаточный конфиг от этого

 30 ## 1 a local bash
 31 # screen -t host03 1 bash
 32 #sessinoname blamb1
 33
 34 ## 2 ssh to host04
 35 # split -v
 36 # focus
 37 # select 2
 38 # resize -6
 39 # screen -t host04 2 ssh host04
 40 # caption string "%{kk}XXXXXXX"
 41
 42 ## 3 bashed
 43 # focus
 44 # select 1
 45 # split
 46 # focus
 47 # select 3
 48 # screen -t bashed 3  bash
 49 #exec ssh host04
 50 # caption string "%{kk}XXXXXXX"
 51
 52 ## 4 bashedup
 53 # split
 54 # focus down
 55 # screen -t bashedup 4 bash
 56 # caption string "%{kk}XXXXXXX"
 57
 58 ## 5 compass
 59 # split
 60 # focus down
 61 # resize -14
 62 # screen -t compass 5 bash
 63 # leave caption commented till resize works
 64 #caption string "%{kk}XXXXXXX"
 65
 66 #focus up
 67
 68
 69 ## 5mysql
 70 # exec mysql -p
 71 # screen -t mysql 5 mysql
 72
 73 ## 6php
 74 # screen -t php.ini 6 vim /etc/php/php.ini
 75 # select php.ini
 76 # chdir /etc/php
 77 # exec vim php.ini

0

Вы можете использовать приложение «Экран»

Установите экран, выполнив следующую команду:

apt-get install screen

Чтобы убедиться, что экран установлен, запустите

screen -v

в течение сеанса экрана вы можете создать новое окно, нажав CTRL + A, а затем C. Ваше старое окно останется активным, и вы сможете выполнять другие задачи. Для переключения между окнами нажмите CTRL + A, затем N (для следующего окна) или CTRL + A, затем P


0

Для этого есть встроенные ярлыки и удобная навигация.

Ctrl + Alt + T - нажмите один раз, чтобы запустить 1-й терминал
Ctrl + Shift + T - нажмите 3 раза, чтобы получить еще 3 терминала в качестве вкладок, в одном и том же окне 1-го терминала
Alt + 1или Alt + 2или Alt + 3или Alt + 4- каждый из них переключится на соответствующую вкладку / терминал.

Надеюсь, это поможет.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.