
У меня есть скрипт tcl, работающий в MWM, и он запускает терминалы xterm с помощью:
.menu.utils.m add command -label {Xterm} -command {
exec xterm -sb -T "Xterm" -sl 10000 -e su - int &
}
При этом терминалы не могут быть закрыты с помощью Alt+F4 или панели меню. Есть ли способ исправить это?
решение1
Вы пробовали использовать xkill
? Это уничтожит окно, хотя и оставит su
процесс и его дочерние элементы. Вы можете попробовать нажать Ctrl-C в , xterm
чтобы убить процесс. Или, если это действительно xterm
процесс (а не gnome-terminal
что-то в этом роде), вы можете нажать Ctrl-левый клик и отправить сигнал KILL (или другой) дочернему процессу.
ОБНОВЛЯТЬ
Я думаю, вы могли бы добавить что-то вроде этого к своему .mwmrc
:
Keys MyKeyBindings
{
Alt Shift<Key>F4 window f.exec "xkill -id <WM_CLIENT_LEADER>"
}
Причина, по которой f.kill
и Close
в fvwm
не закрывает, xterm -e su -
заключается в том, что xterm
не может завершить подпроцесс. Поэтому, чтобы оконный менеджер завершил его, его xterm
нужно уничтожить, а не вежливо попросить закрыть.
решение2
Итак, в конце концов я нашел активное окно и уничтожил его следующим образом:
f.exec "xkill -id `xdpyinfo | grep focus | awk '{print $3}' | tr -d ','`"