Дочерние процессы

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Аватара пользователя
radial
Сообщения: 577
ОС: OpenSUSE

Дочерние процессы

Сообщение radial »

Код: Выделить всё

#!/bin/bash
(
echo Подпроцесс 1 запущен
sleep 3
echo Подпроцесс 1 завершен
) &
(
echo Подпроцесс 2 запущен
sleep 7
echo Подпроцесс 2 завершен
exit
) &
exit 0

И после "Подпроцесс 2 завершен" приглашение командной строки не появляется- т.е. скрипт не завершается. Если заменить функциями- то же самое. А как надо?

***
Чтобы это не выглядело бредом, поясню- нужно запускать несколько операций во время простоя компа (когда скринсейвер).
Спасибо сказали:
math
Сообщения: 286
Статус: Ъ участник
ОС: Artix (= Arch without systemd)

Re: Дочерние процессы

Сообщение math »

radial писал(а):
05.06.2010 12:10

Код: Выделить всё

#!/bin/bash
(
echo Подпроцесс 1 запущен
sleep 3
echo Подпроцесс 1 завершен
) &
(
echo Подпроцесс 2 запущен
sleep 7
echo Подпроцесс 2 завершен
exit
) &
exit 0

И после "Подпроцесс 2 завершен" приглашение командной строки не появляется- т.е. скрипт не завершается. Если заменить функциями- то же самое. А как надо?

***
Чтобы это не выглядело бредом, поясню- нужно запускать несколько операций во время простоя компа (когда скринсейвер).

у меня всё работет:
warlock@darkstar:~$ ./1
pp 1 zp
pp 2 zp
warlock@darkstar:~$ pp 1 zv
pp 2 zv
[тут я нажал enter]
warlock@darkstar:~$
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Дочерние процессы

Сообщение sash-kan »

math писал(а):
05.06.2010 13:24
[тут я нажал enter]
а можно было и команду набирать. shell к этому был вполне готов (приглашение ведь выдал).
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
radial
Сообщения: 577
ОС: OpenSUSE

Re: Дочерние процессы

Сообщение radial »

а, это глюк терминала скорее всего. собственно уже стало не актуально- всплыли другие вопросы.
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Дочерние процессы

Сообщение KiWi »

radial писал(а):
05.06.2010 15:00
а, это глюк терминала скорее всего. собственно уже стало не актуально- всплыли другие вопросы.

Это глюк... Точнее не глюк вовсе. А следствие того, что процесс уже завершился, шелл вывел приглашение, но при этом дочерние процессы продолжают выводить сообщения в stdout, то есть в терминал. То есть после приглашения.
Спасибо сказали:
Аватара пользователя
radial
Сообщения: 577
ОС: OpenSUSE

Re: Дочерние процессы

Сообщение radial »

Спасибо, KiWi, теперь все полностью ясно.
Спасибо сказали: