Re: VYŘEŠENO: Příkaz "wait" v bash

Petr Franta petr.franta na gmail.com
Sobota Listopad 12 23:38:30 CET 2011


Můžete mi to prosím vás vysvětlit, proč se příkaz wait chová jednou tak a
podruhé jinak? Z vámi zaslané dokumentace jsem to nepochopil - jsem
linuxová lama, tak to prosím vás berte na zřetel při vysvětlování. Já jsme
to začal používat podle rady, ale nevím proč se to tak chová. Myslel
jsem si, že příkaz  wait má čekat na doběh všech procesů vytvořených z
aktuálním procesu.

První příklad pracuje správně
#!/bin/bash
ls -R /tmp | grep a &
ls -R /tmp | grep a &
ls -R /tmp | grep a &
wait
echo "Cekal jsem az to vse dobehne"

Druhý ne (podle mne by měl wait čekat, ale třeba je to správně):
#!/bin/bash

ls -R /tmp | while read txt
do
  { echo "${txt}"; sleep 5; } &
done

wait
echo "Koncim hned, necekam..."

Předem děkuji za vysvětlení
Petr

2011/11/12 Pavel Kankovsky <peak na argo.troja.mff.cuni.cz>

> On Sat, 29 Oct 2011, Petr Franta wrote:
>
> > Takže problém dělal řádek cat soubor | ...
>
> Čtěte standardy (v tomto případě POSIX), tam to všechno je:
> <
> http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_12
> >
> (zejména poslední odstavec)
>
> --
> Pavel Kankovsky aka Peak                          / Jeremiah 9:21        \
> "For death is come up into our MS Windows(tm)..." \ 21st century edition /
>
>
> _______________________________________________
> Linux mailing list
> Linux na linux.cz
> http://www.linux.cz/mailman/listinfo/linux
>


Další informace o konferenci Linux