tmux: определить, какой процесс выполняется в активной панели

12

Есть ли способ, как определить, какой процесс выполняется в активной панели?

tmux: найдите окно «my», проверьте, связано ли оно с активным , однако оно занимается обнаружением из панели.

Мне нужно обнаружить это из внешней команды (не из сеанса tmux).

Проблема, скорее всего, сводится к двум шагам:

  1. Определить, какая панель активна
  2. Определите, какой процесс выполняется в данной панели
Enuy
источник
Вы можете найти мой сценарий полезным.
x-yuri

Ответы:

13

Оказывается, tmux обладает мощными возможностями форматирования для команды list-panes:

$ tmux list-panes -F '#{pane_active} #{pane_pid}'
0 4993
0 5382
1 6189

Команда выше напечатает

1 <process_pid>

для активной панели.

Варианты вспенивания описаны в man tmux:

 pane_active                     1 if active pane
 pane_pid                        PID of first process in pane

Для обсуждения термина «первый процесс в панели» см. Что означает «первый pid панели» в tmux?

Enuy
источник