Exit sur une boucle

Résolu/Fermé
jachtako Messages postés 22 Date d'inscription mercredi 16 avril 2014 Statut Membre Dernière intervention 13 octobre 2017 - 13 oct. 2017 à 09:58
jachtako Messages postés 22 Date d'inscription mercredi 16 avril 2014 Statut Membre Dernière intervention 13 octobre 2017 - 13 oct. 2017 à 11:45
Bonjour,

Besoin d'aide s'il vous plait. voici ci-dessous mon script
le script va boucler sur les lignes du fichier /V1/fichier.txt et exécuter des requêtes sql en fonction des lignes lues.

--------------------------------------------------------------------------

#!/bin/ksh

rm /V1/fichier*

ls /target/sql/ > /V1/fichier.txt

while read line

do

sqlplus toto/toto@$ORACLE_SID @${line} | tee -a ${line}_.log

cat ${line}_.log | grep -q 'ORA-'

sed 1d /V1/fichier.txt -i

done < /V1/fichier.txt

----------------------------------------------------------------------------

Je souhaiterai que le script s’arrête immédiatement lorsque la commande grep trouve la chaîne ORA (sortie immédiate du while)

merci pour votre aide

Bien cordialement.



1 réponse

UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157
13 oct. 2017 à 10:46
Salut,

Remplacer
cat ${line}_.log | grep -q 'ORA-'
par
grep -q 'ORA-'  ${line}_.log && break
.
1
jachtako Messages postés 22 Date d'inscription mercredi 16 avril 2014 Statut Membre Dernière intervention 13 octobre 2017
13 oct. 2017 à 11:45
Merci pour ta réponse. j'ai testé et c'est exactement ce que je voulais.
Merci encore.

Bien cordialement.
0