завершить фоновую задачу, запущенную xterminal

завершить фоновую задачу, запущенную xterminal

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

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

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

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

решение1

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

Обычно можно обойтись без остановки xterms, чтобы завершить работающие в них программы.

решение2

Эти три ссылки могут быть интересны:

  1. pgrep и pkill- Специальная страница Solaris
  2. Эта страница об управлении процессами окнана U&L
  3. TheЦепочка процессовв docstore

Связанный контент