Récupérer la valeur de la commande grep

Bonjour,
quand je fais -> grep toto ALFA|grep traitement
j'ai: toto ........>traitement ok
je veux récupérer ce resultat dans une variable

if [ -e /papajeg/fue1/LalaO/ALFA]
then
var1=grep toto ALFA|grep traitement
echo "${var1} " | mail -s "Information " mammama@chii.fr
fi

aidez moi!!
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  1. Contributeur
    var1=$(ps -ef | grep apache)
    echo $var

    Ce n'est pas ta commande, mais c'est le même principe...

    Ceci dit : "grep toto ALFA|grep traitement"... tu veux faire quoi comme ça ?

    1. c'est quoi apache le nom du fichier?
      j'ai fait ->grep toto ALFA|grep traitement pour avoir la ligne dans laquelle j'ai toto et traitement du fichier ALFA :
      ....toto.............>traitement ok
      mon but c'est de savoir si le traitement est OK ou KO
    2. Contributeur
      @sajodia
      if [ -e /papajeg/fue1/LalaO/ALFA]
      then
      var1=$(grep toto ALFA | grep traitement)
      echo $var1 | mail -s "Information " mammama@chii.fr
      fi 


      Ca, ca te renverra les lignes contenant toto et traitement... par contre, si il n'y a pas de correspondance, ça ne marchera pas.

      if [ -e /papajeg/fue1/LalaO/ALFA]
      then
      var1=$(grep toto ALFA | grep traitement | grep -v grep)
      if [ $? -eq 0 ]
      then
      echo $var1 | mail -s "Information " mammama@chii.fr
      fi
      fi 


      Là, le mail ne part que si il a des correspondances.

    3. Contributeur
      @sajodiaPetite correction : tu peux retirer le "| grep -v grep", il ne sert à rien dans ton exemple.

    4. @HostOfSeraphimmais pour vérifier si c'est OK ou KO qu'est ce que je peux faire?
      parce que dans mon fichier je n'aurais pas forcement toto et traitement
      je veux s'il trouve OK
      then echo "OK"
      else echo "KO"