#! /bin/sh # Sam K, déc 99 # magie: le script lance super sur son propre nom # et ca lance le bon programme.. prog=`basename $0` # Si le script courant est lancé par super, $SUPERCMD permet de le voir. # et alors on continue gentiment le script, sinon on éxécute super sur le prog. # ca permet de faire des scripts qui lancent super sur eux-memes.. test "X$SUPERCMD" = "X$prog" || test "X$UID" = "X0" || exec /usr/bin/super $prog ${1+"$@"} # le script s'arrete ici ds ce cas. # Contenu du script : # ici c'est vide car "super $prog" va en fait éxécuter un autre script, celui ci étant juste un "wrapper". # pour lanceMake et autre, c'est là qu'est mis le script à éxécuter. # enfin, pour éviter de lancer super inutilement ds le cas où on est déja root, # il reste le cas UID=0 : on essaye de lancer le prog, sans passer par super. # -> on restreint le PATH au minimum. if test "X$UID" = "X0"; then echo "uid=root -> on lance direct le prog, sans super (essayez where $prog) " export PATH=/usr/local/sbin:/usr/sbin:/sbin:/opt/local/bin:/usr/local/bin:/usr/bin:/bin exec $prog ${1+"$@"} fi