Как правильно добавить новый интерфейс в bond0?

Итак, один из подходов - создать новое окно и затем присоединить:

tmux -S /tmp/socket new-window -n vi /usr/bin/vi
tmux -S /tmp/socket attach

Таким образом, клиент может создать новое окно, а затем подключиться к нему.

Однако я подозреваю, что сеанс tmux может не делать то, что вы хотите.

Причина, по которой attach не имеет команды, заключается в том, что сеанс представляет собой представление о том, что в настоящее время отображается на экране, которое совместно используется всеми подключенными клиентами. Так что присоединение с помощью команды немного странно. Все клиенты будут просматривать одно и то же, а вызов нового окна изменит вид для всех подключенных клиентов.

Если вы хотите предоставить общий доступ к коллекции окон (например, представлениям запущенных программ), но у каждого клиента будет отдельный вид, тогда вам необходимо создать сеансы. Вы можете использовать аргумент -t для new-session , чтобы создать сеанс, который использует свои окна совместно с другим сеансом. Очевидно, вы не можете использовать -t вместе с командой для нового сеанса, что на самом деле является допустимым вариантом использования, поэтому вы в конечном итоге используете флаг -d , а затем создаете команда. Что еще больше раздражает, может показаться, что в new-window отсутствует аргумент сеанса, поэтому вместо этого вы полагаетесь на порядок, в котором вызываются вещи!

tmux -S /tmp/socket new-session -s base  # run once

# For each client
tmux -S /tmp/socket new-session -t client-view -d 
tmux -S /tmp/socket new-window /usr/bin/vi
tmux -S /tmp/socket attach -t client-view

Это все немного путаницы, мне удавалось эффективно использовать такой подход в течение ряда лет. (Каждое из моих окон терминала представляет собой отдельный вид на общий сеанс tmux).

Возможно, вас заинтересует этот сценарий https://github.com/rainerborene/tmx/blob/master/tmx , который объединяет все это в один сценарий оболочки.

1
09.10.2017, 18:46
0 ответов

Теги

Похожие вопросы