Problème paramètres fonction debug.

Résolu
Bonjour,

J'ai un soucis encore,
J'ai une fonction execute qui permet de voir si un commande d'un script est passé ou non, la voici:

execute() {
var=$*
echo "Executing $var"
eval $var
if [ $? -eq 0 ]
then
echo " `date '+%Y-%m-%d %H:%M:%S'` Command $var :Ok" >> $result
else
echo "`date '+%Y-%m-%d %H:%M:%S'` Command $var :Failed" >> $errors
fi
}

Mon problème c'est quand j'ai des commande avec des || ou des &&, ma fonction va executé que ce qu'il y a avant les || ou &&.
Exemple
grep -q "install cramfs /bin/true" /etc/modprobe.d/CIS.conf || echo 'install cramfs /bin/true' >> /etc/modprobe.d/CIS.conf

Je voudrai savoir si il est possible de faire appelle a ma fonction d'un bloc.
Avec le parenthèses ça ne marche pas :/ et le problème c'est que ma commande peut avoir des guillemets ou des cote. (ce qui peut faire sortir)

Merci d'avance

1 réponse

  1. salut,

    « si tu n'as rien d'agréable à dire, ne dis rien »

    je ne dirais qu'une chose alors :
    logger
    !
    1. Bonjour,
      Merci pour la réponse rapide. Mais la fonction
      logger 
      n'est pas du tout ce que je recherche.
      Cordialement,
    2. pourquoi ? ce serait tellement plus simple et plus propre.
    3. Grosso modo c'est un script qui ne doit pas faire de log et qui n'envoie rien au centralisateur, (ça n'est pas un script pirate, je préfère préciser)