Script shell

dejuly -  
 lediz -
Je fais un sqlplus login/password@base depuis un script shell. Le login n'etaant pas bon ou la base n'existant pas, j'aimerais pouvoir recuperer une erreur dans mon script shell et y continuer d'autres traitements.

Quelqu'un pourrait il m'aider ?

2 réponses

  1. Kuching Messages postés 2702 Statut Contributeur 157
     
    Salut,

    Pourrais tu etre plus clair?
    Comment le login/mdp/base pourrait etre faux si tu l'implementes directement ds ton code??

    A+
    K.
    0
    1. dejuly
       
      Supposons que le login est faux ou mal ecrit. On a donc une erreur que j'aimerais recuperer dans mon shell et gerer
      0
  2. lediz
     
    En testant par exemple le résultat d'un "tnsping" au préalable :

    fichier "z" = le script unix
    fichier "z.sql" = le script SQL
    fichier "z.out" = fichier résultat : du tnsping ou du select SQL

    Description du fonctionnement du script "z" :
    ---------------------------------------------------
    - Redirige un tsnping sur le service en question dans un fichier.
    - Ensuite fait un "grep" sur son contenu ( OK et msec....)
    - Et c'est ainsi que l'on sait si le service est accessible
    - Si oui : connection et exécution d'un script.....etc........

    ---------------------------------------------------
    Contenu du script : z
    ---------------------------------------------------
    service=mon_service
    user=mon_user_name
    pwd=mon_user_password
    f_sql=z.sql
    f_out=z.out

    tnsping $service > $f_out
    grep 'OK' $f_out | grep 'msec' $f_out | wc -l | read my_nbr
    if [ "$my_nbr" != "1" ]
    then vi $f_out
    else sqlplus -S $user/$pwd@$service @$f_sql > $f_out ; vi $f_out
    fi
    -------------------------
    script : z.sql ( mon exemple)
    -------------------------
    select sysdate from dual;
    exit;
    0