Passer au contenu

Comment faire patienter le système lors d’un script ?

Solution : en lui demandant d’attendre une pression de touche. Testé avec RedHat 6.2/SuSE 6.4/Mandrake 7.1/CorelLinux 1.1.

Lorsque vous êtes connecté à Internet, vous exécutez sendmail -q puis fetchmail afin d’envoyer les courriers placés en attente et rapatrier les nouveaux messages. Pour suivre le bon déroulement de ces opérations, vous regroupez les commandes précédentes dans un script dont le résultat s’affiche dans une xterm distincte. Par exemple, vos saisissez xterm -e /usr/local/bin/courrier.sh &, oú /usr/local/bin/courrier.sh est un script (dont le listing est donné ci-dessous, Exemple 1) de consultation du courrier. Mais le terminal virtuel se ferme à la fin de l’exécution du script. Il est donc impossible de visualiser les derniers messages affichés et en particulier les erreurs éventuelles. Pour laisser la fenêtre xterm affichée, il est conseillé d’attendre que l’utilisateur appuie sur une touche. Pour cela, utilisez la commande read comme dans l’exemple ci-dessous (Exemple 2). Notez que le commande lançant le script peut être insérée dans un menu comme celui de WindowMaker ou celui de KDE.Listing :


#!/bin/bash
# Exemple 1 – script bash de réception du courrier (/usr/local/bin/courrier.sh):
/usr/sbin/sendmail -q -v
/usr/bin/fetchmail -FK




#!/bin/bash
# Exemple 2 – script avec attente dappui sur une touche:
/usr/sbin/sendmail -q -v
/usr/bin/fetchmail -FK


echo “Appuyez sur une touche pour terminer le script”
read temp

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Filigrane Press