Есть процесс (программа) prog1, которая выполняется в Unix и которая запускает процесс prog2, который также выполняется в Unix.
Как сделать так, чтобы у второго процесса prog2 на экране появлялось своё терминальное окно, а не использовалось терминальное окно первого процесса prog1?
Здравствуйте, Аноним, Вы писали:
А>Есть процесс (программа) prog1, которая выполняется в Unix и которая запускает процесс prog2, который также выполняется в Unix. А>Как сделать так, чтобы у второго процесса prog2 на экране появлялось своё терминальное окно, а не использовалось терминальное окно первого процесса prog1?
В общем случае никак, потому что у разных window managers разные средства внешнего управления, что и как открывать на экране, а некоторые вообще такого не дают.
Но как грязный хак можно запустить xterm с prog2 в отдельной сессии.
Если не xterm, то перепробовать ещё несколько стандартных эмуляторов терминала или посмотреть рекомендованный в конфиге.
The God is real, unless declared integer.
Re[2]: Как в Unix отвязать один процесс от другого?
От:
Аноним
Дата:
25.04.12 12:40
Оценка:
Здравствуйте, netch80, Вы писали:
N>Здравствуйте, Аноним, Вы писали:
А>>Есть процесс (программа) prog1, которая выполняется в Unix и которая запускает процесс prog2, который также выполняется в Unix. А>>Как сделать так, чтобы у второго процесса prog2 на экране появлялось своё терминальное окно, а не использовалось терминальное окно первого процесса prog1?
N>В общем случае никак, потому что у разных window managers разные средства внешнего управления, что и как открывать на экране, а некоторые вообще такого не дают.
N>Но как грязный хак можно запустить xterm с prog2 в отдельной сессии. N>Если не xterm, то перепробовать ещё несколько стандартных эмуляторов терминала или посмотреть рекомендованный в конфиге.
Если я работаю с Unix-сервером через эмулятор Exceed, то возможно ли запустить процесс prog2 в отдельном окне (помимо команды xterm)?
Re[3]: Как в Unix отвязать один процесс от другого?
Здравствуйте, <Аноним>, Вы писали:
А>Если я работаю с Unix-сервером через эмулятор Exceed
Попридераюсь, Exceed это не эмулятор, это реализация X-server'а для ОС Windows.
Что его попросит сделать клиент, то он и нарисует. Так что опять все возвращается к тому, что у тебя выполняется на Unix-машине.
Здравствуйте, Аноним, Вы писали:
А>Есть процесс (программа) prog1, которая выполняется в Unix и которая запускает процесс prog2, который также выполняется в Unix. А>Как сделать так, чтобы у второго процесса prog2 на экране появлялось своё терминальное окно, а не использовалось терминальное окно первого процесса prog1?
Какое окно? Мы на сервере по ssh, иксов нет и не предвидится.
Re[2]: Как в Unix отвязать один процесс от другого?
Здравствуйте, Аноним, Вы писали:
А>Есть процесс (программа) prog1, которая выполняется в Unix и которая запускает процесс prog2, который также выполняется в Unix. А>Как сделать так, чтобы у второго процесса prog2 на экране появлялось своё терминальное окно, а не использовалось терминальное окно первого процесса prog1?
Могу предложить еще один грязный хак, который я иногда использовал, чтобы раскидать stdout/stderr по разным окнам (работает под Linux под X-ами) — перенаправление потока в один из /dev/pts/. При этом вывод отображается в окне эмулятора терминала, который этот /dev/pts/ использует. Перенаправлять таким макаром stdin как-то не пробовал
Люди! Люди, смотрите, я сошел с ума! Люди! Возлюбите друг друга! (вы чувствуете, какой бред?)