Я хочу написать программу, которая печатает текущее сфокусированное имя окна, и если это гном-терминал, затем выводит текущую программу внутри текущей вкладки gnome-terminal (для пример vim, если сеанс vim запущен).Как проверить, какая программа запускается внутри gnome-terminal
Чтобы получить имя в настоящее время сфокусированного окна, я использовал:
xprop -root | grep "_NET_ACTIVE_WINDOW (ОКНО)"
xprop -id 0x220ad5a | Grep "WM_CLASS (STRING)"
Если текущее окно гном-терминал, это будет возвращать 'гном-терминал.
Но как я могу узнать программу, запущенную внутри gnome-терминала (точнее: внутри текущей вкладки gnome-terminal)? Я думал об использовании dbus, но gnome-terminal, похоже, не поддерживает его.
Это может быть несколько процессов, если терминал gnome запускает несколько вкладок. – dseifert
Я считаю, что каждая вкладка будет иметь свой собственный PID, потому что она запускает отдельную оболочку. –