3

Я использую tmux для управления своими окнами и т.д., И одна из вещей, которые я делаю, - это SSH к удаленному серверу и подключение к сеансу tmux, работающему там. Оказавшись там, я не могу послать Cb через этот сеанс tmux (тот, который работает в ssh в моем исходном локальном tmux).

Это можно обойти?

3 ответа3

4

Нажмите Ctrl - b один раз для локального tmux и снова для удаленного, затем нажмите клавишу для команды, которую вы хотите использовать в удаленном сеансе.

2

Если вы не сопоставили Ctrl+b Ctrl+b

Если вы не сопоставили Ctrl+b Ctrl+b с последним окном, чтобы эмулировать поведение экрана (что очень популярно), то вы можете использовать его в качестве префикса для внутреннего сеанса tmux. Таким образом, для выдачи команд во внутренний сеанс вы должны использовать Ctrl+b Ctrl+b Command

Ответ выше предполагает, что ваш префикс ключ все еще Ctrl+B на обеих машинах.

Если вы сопоставили Ctrl+b Ctrl+b

Если вы отобразили Ctrl+b Ctrl+b, вам нужно использовать команду tmux :send-prefix . Многие люди сопоставляют это с Ctrl+b b, чтобы имитировать поведение экрана по умолчанию. Вы бы добавили это в ваш .tmux.conf, чтобы навсегда добавить эту привязку:
bind b send-prefix

Затем вы можете вводить команды для внутреннего сеанса, используя Ctrl+b b Command.
(или без привязки с помощью Ctrl+b:команда :send-prefix)

Приведенный выше ответ предполагает, что ваша префиксная клавиша все еще Ctrl+b во внешнем сеансе.

0

Короче говоря, вы можете добавить следующую строку в ваш tmux.conf для управления "tmux inside tmux". Эта строка определяет ваш ключ привязки к CTRL+A для "удаленного" сеанса.

bind-key -n C-a send-prefix

Ярлык C-a можно изменить любыми другими бесплатными клавишами.

Затем вы можете использовать CTRL+B для управления вашим сеансом tmux level1 (по умолчанию) и CTRL+A для управления вторым сеансом tmux.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .