
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
26 lines
1.1 KiB
Bash
Executable file
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
|