Як змусити tmux убити сеанс як звичайний при виході терміналу


1

Тому зазвичай, коли у вас є термінал X, і ви виходите з вікна, термінал гине, а HUP надсилається всім процесам, які мають цей термінал як контрольний термінал, їх звичайна відповідь полягає у виході після отримання HUP.

Коли в нього входить tmux, який знаходиться між терміналом і фактичним процесом, як правило, оболонкою, цього не відбувається. Після HUP tmux, здається, просто від'єднує, а не вбиває будь-які приєднані в даний час сеанси. Це означає, що сеанс постійно затримується, а також сам процес оболонки та будь-які запущені процеси всередині цієї оболонки.

Тож я б хотів ідеальної поведінки (але, звичайно, будь-яке поліпшення в порівнянні з поточним) є.

  1. Коли вікно керуючого терміналу, в якому запущений екземпляр tmux, виходить та надсилає HUP
  2. tmux повинен надсилати HUP на будь-який із сеансів, які зараз не приєднані в іншому місці
  3. в ідеалі надсилайте його лише на сеанси, яким явно не було дано ім’я

Я знаю, до речі, ви можете уникнути цього, виходячи з PREFIX+:kill-sessionабо просто, ctrl+dале перший є багатослівним, а останній працює лише зі снарядами, які виходять на EOF.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.