Bonjour,
Tout d'abord je ne sais pas si je me trouve dans le bon forum par rapport à ma question qui concerne la commande 'grep' appelée dans un script 'ksh' qui commence ainsi :
Je dois retourner un résultat identique à celui ci-dessous :'#!/bin/ksh'
Ce résultat correspond à la comparaison de tables Oracle 2 par 2.hpx16:/data/13asr2/files/data/FICH/PURGE/SQL> grep 'Compteur ' DCO506AV.log
Compteur SAT_ALO AVANT purge = 2426331
Compteur SAT_FEU AVANT purge = 1653952
Compteur SAT_ALO AVANT purge = 2426331
Compteur SAT_STU AVANT purge = 2538999
hpx16:/data/13asr2/files/data/FICH/PURGE/SQL>
Ce que je souhaite donc obtenir, c'est :
Existe-t-il une commande dans le 'grep' permettant de spécifier des passages à la ligne (ou insertion d'une nouvelle ligne vierge) toutes les 2 lignes ?Compteur SAT_ALO AVANT purge = 2426331
Compteur SAT_FEU AVANT purge = 1653952
Compteur SAT_ALO AVANT purge = 2426331
Compteur SAT_STU AVANT purge = 2538999
Avec du sed par exemple...
Mon script est le suivant :
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 #----- Analyse du fichier de log genere par SQLPLUS if [ ! -f ${COMPTEURSORTIE} ]; then echo "$((`/bin/date +'%H%M%S'`)) - Le fichier ${COMPTEURSORTIE} est introuvable dans le repertoire : ${REPSQLLOG}" >> ${COMPTEURERR} else #----- Code retour de SQLPLUS CODERETOUR=$? #----- Recherche des erreurs dans le fichiers de log TESTERR=`grep -i 'ORA-' ${FICHIERSORTIE} | wc -l` #----- Recherche des tags 'Compteur ' dans le fichiers de log TESTCPT=`grep -i 'Compteur ' ${FICHIERSORTIE} | wc -l` if [ $TESTERR -gt 0 ]; then grep 'ORA-' ${FICHIERSORTIE} >> ${COMPTEURERR} echo "$((`/bin/date +'%H%M%S'`)) - Code retour SQLPLUS ${CODERETOUR}" >> ${COMPTEURSORTIE} echo "$((`/bin/date +'%H%M%S'`)) - Erreur a l'affichage des compteurs" >> ${COMPTEURERR} export ErrOracle=OUI else if [ $TESTCPT -gt 0 ]; then cat ${FICHIERSORTIE}|grep 'Compteur ' >> ${COMPTEURSORTIE} echo " " >> ${COMPTEURSORTIE} echo "$((`/bin/date +'%H%M%S'`)) - Code retour SQLPLUS ${CODERETOUR}" >> ${COMPTEURSORTIE} echo "$((`/bin/date +'%H%M%S'`)) - Succes a l'affichage des compteurs" >> ${COMPTEURSORTIE} export ErrOracle=NON else echo "$((`/bin/date +'%H%M%S'`)) - Code retour SQLPLUS ${CODERETOUR}" >> ${COMPTEURSORTIE} echo "$((`/bin/date +'%H%M%S'`)) - Il n'y a pas de compteur dans le fichier de log" >> ${COMPTEURSORTIE} export ErrOracle=NON fi fi fi echo " " >> ${COMPTEURSORTIE}
Cdlt,
Olivier
Partager