1

Я использовал команду Xterm -e для запуска шести программ в фоновом режиме в шести терминалах X в моем скрипте оболочки. Когда я использовал команду PS, я вижу 6 процессов Xterm, работающих в фоновом режиме, но я не вижу программ. Если я использовал команду Top, я могу видеть программы. Есть ли чистый способ убить все терминалы х и программы?

Вот команда xterminal в моем скрипте:

xterm -e "script -c \"program\" outputfile" &

Другая проблема состоит в том, что я пытаюсь записать вывод программы в файл, но по какой-то причине я могу захватить только его часть. Если в конце я избавлюсь от & , я смогу перехватить все выходные данные, но не смогу вернуть контроль, поскольку программа работает как сервер, а это значит, что она не завершится, пока я не убью сервер.

2 ответа2

0

Эти три ссылки могут представлять интерес:

  1. pgrep и pkill - страница для Solaris
  2. Эта страница по управлению оконными процессами в U & L
  3. Цепочка процессов в docstore
0

ps без аргументов / опций отображает только процессы, подключенные к текущему терминалу. Все, что вы запускаете в новом xterm будет иметь псевдотеку этого xterm качестве управляющего терминала.

Обычно вы можете убить xterm s, чтобы убить работающие в них программы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .