tmux: Mendeteksi proses mana yang berjalan di panel aktif


12

Apakah ada cara bagaimana mendeteksi proses apa yang berjalan di panel aktif?

tmux: Temukan jendela "saya", periksa apakah itu aktif terkait, namun, ini berkaitan dengan deteksi dari dalam panel.

Saya perlu mendeteksi ini dari perintah eksternal (bukan dari dalam sesi tmux).

Masalahnya kemungkinan besar bermuara pada dua langkah:

  1. Deteksi panel mana yang aktif
  2. Mendeteksi proses apa yang berjalan di panel yang diberikan

Anda dapat menemukan skrip saya bermanfaat.
x-yuri

Jawaban:


13

Ternyata tmux memiliki kemampuan pemformatan yang kuat untuk perintah list-panes:

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

Perintah di atas akan dicetak

1 <process_pid>

untuk panel aktif.

Opsi pengaturan area dijelaskan dalam man tmux:

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

Untuk diskusi tentang istilah "proses pertama di panel", lihat Apa arti "pid pertama panel" di tmux?

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.