Jak wysłać polecenie do wszystkich paneli w tmux?


191

Lubię przywoływać :clear-historyszyby z ogromnym przewijaniem. Chcę jednak napisać skrypt, aby wysłać to polecenie do wszystkich paneli w różnych oknach.

Wiem, jak wysłać polecenie do wszystkich okien, dzięki uprzejmości tego pytania , ale jak mogę wysłać polecenie do wszystkich okien w którym oknie?

send-keysi synchronize-panesze strony tmux przychodzi mi na myśl, ale nie jestem pewien, jak je połączyć. Ale może jest na to prostszy sposób.

Dodatkowe uwagi:

Myśląc o tym trochę, tmux list-panes -awydaje się , że zawiera listę wszystkich paneli w bieżącej sesji. Bardzo przydatne na początek. Gdzie mogę się stąd udać?


Dla tych, którzy przyjeżdżają na to pytanie w nadziei na znalezienie rozwiązania, które odnoszą się do każdego panelu, w każdym oknie, w każdej sesji: scripter.co/command-to-every-pane-window-session-in-tmux
CHB

Odpowiedzi:


355

Czy próbowałeś śledzić w oknie tmux z wieloma panelami

Ctrl-B :

setw synchronize-panes on

clear history

53
Tylko dla kompletności, aby wyłączyć, jeśli byś nie zrobiłCtrl-b :setw synchronize-panes off
Mitch

19
i możesz ~/.tmux.confbind -n C-x setw synchronize-panes on bind -n M-x setw synchronize-panes off
przypisać

4
czy można ustawić ten sam skrót do przełączania?
Arnold Roa,

20
@ArnoldRoa tak, opcja przełączy się, jeśli wyjdziesz on/off. Więcbind -n C-x setw synchronize-panes
sensacja

1
Jeśli dodam, bind -n C-x setw synchronize-panesjaki skrót powinienem nacisnąć, aby wywołać? Czy to przedrostek + C i x. Próbowałem wiele opcji
Bill Goldberg
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.