Dans l'exemple ci-après le programme affiche des points tant que la compression du fichier n'est pas terminée.
Dès que la compresion est terminée le programme bloqué par la commande wait $PID est libéré et le message
"La compression est terminée" peut être affiché.
affiche_points() {
while ps $PID > /dev/null # Boucle tant que $PID existe
do print - ".\c" # Affiche un point sans retour chariot
sleep 1
done
}
fichier='image.ps'
echo "compression en cours : "
compress $fichier &
PID=$!
affiche_points & # Fonction lancée en background
wait $PID # Attente de la fin de la compression
echo "\nLa compression est terminée"