scripts/supers/template
krempp 29ba9db4f8 ds le cas UID=root, lance le prog en enlevant /supers du PATH,
au lieu de dire de trouver soi-mme le chemin complet de l'exe..
  tout ce dtail pour viter de lancer super qd il n'y en a pas besoin !

darcs-hash:20000616185658-92525-fc65d76b8c7837e7c5a2dbdc8937a9e6f4156999.gz
2000-06-16 20:56:58 +02:00

26 lines
1.1 KiB
Bash
Executable file

#! /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