Correction d'une script shell

ahmed_king29 Messages postés 39 Statut Membre -  
dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Merci de m'aider :

Le principe est de chercher dans le contenu d'un fichier sous la forme " oraBackup'date '+%Y%m%d_0300''.log " de chercher la chaine de caractère "This backup (20120406_0800) session is completed and finished" s'il est existe affiche 1 sinon 0.

J'ai commencer par ce script :

DIR=/opt/oracle/admin/VSDB_S1/backuplogs

FILE=oraBackup'date '+%Y%m%d_0300''.log
if [ -e cat $DIR/$FILE | grep -w " This backup (20120406_0800) session is completed and finished" ]
then echo 1
else

echo 0
fi

Merci de corriger ce script.

Le contenu du fichier oraBackup'date '+%Y%m%d_0300''.log :

Investigating block corruption...
No block corruption reported...
Finalizing this backup session, going to sleep for 60 sec...
Unmounting backup disks...
Removing lockfile...
Setting correct directory permissions as a result of a potential Data Guard re-installation...
This backup (20120607_0300) session is completed and finished with 2 warning(s).
/etc/init.d/orawatch start... on vs1a
/etc/init.d/orawatch start... on vs1b

3 réponses

  1. ahmed_king29 Messages postés 39 Statut Membre
     
    Merci de m'aider.
    0
  2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello
    This backup (20120607_0300) session is completed and finished
    comment connaitre 20120607_0300 c'est la date du jour ? et 300 ou 800 ?
    0
    1. ahmed_king29 Messages postés 39 Statut Membre
       
      Car
      chaque fichier " oraBackup'date '+%Y%m%d_0300''.log " indique si le backup se génère ou non, si ok on trouve dans le contenu de ce fichier la ligne suivante avec la date du jour :

      exemple :

      This backup (20120607_0300) session is completed and finished

      Merci.
      0
    2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
       
      DIR=/opt/oracle/admin/VSDB_S1/backuplogs 
      FILE=oraBackup$(date '+%Y%m%d_0300').log 
      grep -q "This backup ([0-9_]*) session is completed and finished" $DIR/$FILE 
      if [ $? -eq 0 ] ; then 
              echo trouvé 
      else 
              echo pas trouvé 
      fi 
      0
  3. Utilisateur anonyme
     
    salut,

    grep -qw "This backup (20120406_0800) session is completed and finished" "$dir/$fichier" && echo 1 || echo 0
    0