7.5. Tester votre connaissance des tests

Le fichier global xinitrc est utilisé pour lancer le serveur X. Ce fichier contient un certain nombre de tests if/then. Ce qui suit est un extrait d'une « ancienne » version de xinitrc (Red Hat 7.1, ou très proche).

if [ -f $HOME/.Xclients ]; then
  exec $HOME/.Xclients
elif [ -f /etc/X11/xinit/Xclients ]; then
  exec /etc/X11/xinit/Xclients
else
     # En cas de soucis. Bien que nous ne devrions jamais arriver ici (nous
     # apportons un code de secours pour les clients X), cela ne gêne pas.
     xclock -geometry 100x100-5+5 &
     xterm -geometry 80x50-50+150 &
     if [ -f /usr/bin/netscape -a -f /usr/share/doc/HTML/index.html ]; then
             netscape /usr/share/doc/HTML/index.html &
     fi
fi

Expliquez les constructions de test dans l'extrait ci-dessus, puis examinez une version à jour du fichier, /etc/X11/xinit/xinitrc, et analysez les constructions de test if/then. Vous pouvez avoir besoin de vous référer aux discussions sur grep, sed et les expressions rationnelles.