
Ich weiß, dass ich über die Befehlszeile &
einen Befehl im Hintergrund ausführen kann. Aber ich frage mich, ob ich das auch in einem Skript tun kann.
Ich habe ein Skript wie dieses:
date_stamp=$(date +"%Y-%m-%d" --date='yesterday')
shopt -s extglob
cd /my/working/directory/
sh ./stay/get_it_ios.sh
sh ./stay/get_it_mix.sh
cd stay
zip ../stay_$date_stamp.zip ./*201*
rm ./stay/!(*py|*sh)
Und ich möchte sh ./stay/get_it_ios.sh
und sh ./stay/get_it_mix.sh
zusammen ausführen, um genauere Daten zu erhalten. Ist dies im Rahmen eines Shell-Skripts möglich?
Antwort1
Ja, das ist es. Wenn Sie zwei Dinge gleichzeitig tun und warten möchten, bis beide abgeschlossen sind, können Sie Folgendes tun:
sh ./stay/get_it_ios.sh & PIDIOS=$!
sh ./stay/get_it_mix.sh & PIDMIX=$!
wait $PIDIOS
wait $PIDMIX
Ihr Skript führt dann beide Skripte parallel aus und wartet, bis beide Skripte abgeschlossen sind, bevor es fortfährt.