Захватывать вывод асинхронных команд bash? - PullRequest
1 голос
/ 25 августа 2011

Возможно ли сделать что-то подобное в bash?

output=$(echo hello; sleep 10) &
pid=$!
# run some more commands
wait $pid
echo $output

Я хотел бы запустить несколько команд параллельно, фиксируя их вывод. Я хотел бы сделать это "чистым" способом - без записи во временные файлы и т. Д.

1 Ответ

3 голосов
/ 25 августа 2011

Вы можете использовать именованный канал для связи между родителем и дочерним узлом, подробности см. man mkfifo . Родитель может использовать команду read для извлечения данных из канала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...