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.