Czy istnieje sposób na sprawdzenie indeksu poszczególnych okien w Tmux?
Wiem, że mogę uruchomić coś takiego:
tmux display-message -p "#{pane_index}"
ale działa to tylko w aktywnym panelu. Chcę, aby działał dla dowolnego panelu, w którym jest uruchomiony. Zwykle trudno jest uruchomić skrypt w panelu, który nie jest aktywnym panelem, ale możesz to zrobić, jeśli użyjesz :set-window-option synchronize-panes
do synchronizacji danych wejściowych między wszystkimi panelami.
Jak miałbym tego użyć?
W mojej pracy muszę jednocześnie łączyć się z wieloma identycznymi serwerami w module równoważenia obciążenia, co robię z panelami Tmux. Zwykle włączam funkcję synchronizacji okienek, aby umożliwić mi wysyłanie identycznych informacji do każdego panelu w tym samym czasie. To działa świetnie.
Uważam, że chciałbym połączyć się z serwerami i czasami zrobić coś unikalnego dla każdego panelu, używając za każdym razem tego samego „indeksu okien”. Na przykład uruchomiłbym polecenie tak:
ssh NODE_$(get_pane_number)
który po zsynchronizowaniu i uruchomieniu w każdym panelu uruchomiłby następujące polecenia w oknie z 4 panelami:
ssh NODE_0
w okienku 0
ssh NODE_1
w okienku 1
ssh NODE_2
w okienku 2
ssh NODE_3
w okienku 3
Oczywiście mógłbym to napisać, ale działałoby to dobrze, zanim zacznę synchronizować dane wejściowe. Są chwile, kiedy chciałbym to zrobić po tym, jak zacząłem synchronizować dane wejściowe.