IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

problème affichage shell


Sujet :

Linux

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 52
    Points : 17
    Points
    17
    Par défaut problème affichage shell
    Bonjour à tous,
    je voudrais construire un fichier de commandes sql à partir de mon script shell.
    le fichier qui contient la liste des input est listms.
    quand j'interroge la base de données de manière normale, j'exécute la commande suivante pour avoir le champ date:
    select TO_DATE('01-JAN-1970','DD-MON-YYYY')+ACTIVBDT/86400 from ..... where .......;
    le résultat de cette commande est la valeur du paramètre ACTIVBDT sous format "date" normal, donc il faut passer par cette conversion.
    le problème en lui même n'est pas là.
    le truc c'est que quand il copie la commande dans le fichier sqlquery, il la copie sans mettre les quotes suivantes: '01-JAN-1970','DD-MON-YYYY'

    donc en éxécutant la commande (le fichier sqlquery que j'utilise par la suite pour l'éxécution), ça me retourne une erreur...ce qui est normal, puisque la syntaxe est erronée...

    je ne comprends pas ce qu'il se passe...
    Avez vous une idée sur ce problème?

    Je vous remercie d'avance.

    voilà la partie conernée de mon script:
    -----------------------------------------------------------------
    echo "== Creating SQL command file =="
    cat > sqlquery.$$ << __EOF__
    set echo off;
    set heading off;
    spool sqlres.$$;
    __EOF__
    cat listms | awk '{printf("select TO_DATE('01-JAN-1970','DD-MON-YYYY')+ACTIVBDT/86400 from table where iden_nbr='"'"'%s'"'"';\n",$1)}' >> sqlquery.$$
    echo "spool off;" >> sqlquery.$$
    echo "exit;" >> sqlquery.$$

    echo "== Executing SQL command file =="

  2. #2
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 515
    Points : 2 505
    Points
    2 505
    Par défaut
    C'est parce que tu utlise des simple quotes autour de de ton expression awk. Donc la quote qui précède 01-JAN-1970 est interprété comme la terminaison du quote qui débute ton expression awk, et ne fait donc pas partie de l'expression awk.

Discussions similaires

  1. Réponses: 10
    Dernier message: 08/06/2009, 11h30
  2. problème affichage image
    Par thealpacino dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 30/05/2005, 13h56
  3. Problème affichage primitive
    Par goutbouyo dans le forum DirectX
    Réponses: 4
    Dernier message: 29/12/2004, 18h25
  4. [Plugin][VE] Problème affichage
    Par sebb84 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/07/2004, 14h50
  5. [DOS] Problème affichage de DOS dans un Memo
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 25/06/2004, 13h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo