Bekleyin tüm çocuk süreçlerinin durması beklemez.Linux "Wait" komutunun yapılması TÜM alt süreçlerin beklenmesi
#!/bin/bash
titlename=`echo "[email protected]"|sed 's/\..\{3\}$//'`
screen -X title "$titlename"
/usr/lib/process.bash -verbose [email protected]
wait
bash -c "mail.bash [email protected]"
screen -X title "$titlename.Done"
Ben /usr/lib/process.bash erişimi yok, ama sık sık değişen bir komut dosyası, bu yüzden ona başvuru istiyorum ... ama: Bu benim senaryom bu komut:
#!/bin/ksh
#lots of random stuff
/usr/lib/runall $path $auto $params > /dev/null 2>&1&
Sorunum runall bir günlük dosyası oluşturur ... ve mail.bash bana o günlük dosyası posta varsayalım, ancak bekleme runall bekliyor olmamasıdır Bitirmek için, sadece görünüyor Bitirmek için process.bash için bekliyorum. process.bash işlem görmeden veya process.bash process.bash'ın güncel sürümüne sahip olmaya devam etmek için runall runall beklemek için beklemek için zaten var mı?
Teşekkür, sadece doğrudan çocuklar için bekler
Eğer ps -ef 'ilgili bölümlerine bize miyim 'bekle 'bittikten sonra? Bu hangi süreçlerin çalıştığını ve hangi sürecin başka bir sürecin çocuğu olduğunu göstermelidir ... – Heinzi
Komut dizim ve Process.bash neredeyse anında sona eriyor. Kalan tek süreç rasgele PID'lerin altında çalışan runall. – Dan