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

Scripts/Batch Discussion :

Batch - Variable d'environnent


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 129
    Par défaut Batch - Variable d'environnent
    Bonjour,

    Je vous expose ma problématique :
    Nous utilisons plusieurs batchs. Pour chaque batch nous avons une certaine quantité de variable que l'on aimerait passer en variable d'environnement. Actuellement, chaque script contient les mêmes paramètres...et le but serait de stocker cela dans un seul fichier...

    D'ou ma question comment créer, via un batch, des variables d'envrionnement du type : ConnexionOracle, MdpDsi,...

    D'avance merci,

  2. #2
    Membre confirmé Avatar de Array
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    210
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 210
    Par défaut
    Que veux-tu dire?
    Tu désires un batch qui pourrait interagir directement avec Oracle, sans qu'Oracle fasse quoi que ce soit pour?!

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 129
    Par défaut
    Citation Envoyé par Array Voir le message
    Que veux-tu dire?
    Tu désires un batch qui pourrait interagir directement avec Oracle, sans qu'Oracle fasse quoi que ce soit pour?!
    Non, voici un petit exemple :

    Admettons que j'ai 3 batchs et dans chaque fichier j'ai :
    sqlplus user/mdp@bdd @test.sql
    call C:\test\monfichier.bat

    ce que j'aimerais c'est que ça "user/mdp@bdd" et ça (dans une autre variable) "C:\test\" se trouve dans une variable! Comme ça si j'apporte des modifications a ma chaine de connexion ou je change mon fichier de chemin...je n'ai que ma variable à modifier.

  4. #4
    Membre confirmé Avatar de Array
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    210
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 210
    Par défaut
    Ah, une chance, car je croyais que tu voulais intervenir dans la mémoire d'oracle en utilisant un batch... nevermind.

    Facile : tu devras simplement utiliser le principe d'inclusion, un peux comme les fichiers .h (headers) en C/C++, sauf que ce sera un .bat

    Code setvars.bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    REM Variables récurrentes
    REM - - - - - - - - - - - -
    
    set MDP_USER=user/mdp@bdd
    set BAT_LOCATION_MONFICHIER=monfichier.bat

    Puis, dans tes scripts, en début d'exécution, tu rajoutes la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for /f "tokens=* delims=" %%i in ('type setvars.bat') do (%%i)
    Et tes variables se trouveront dans le batch.



    Il y a aussi une autre alternative, que moi je trouve plus élégante: à la place d'avoir setvars.bat tu aurais setvars.cfg
    Code setvars.cfg : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #SETVARS.CFG
    #
    # Variables récurrentes
    #
    # Les lignes commençant avec le caractère '#' sont des
    # commentaires.
    
    MDP_USER=user/mdp@bdd
    BAT_LOCATION_MONFICHIER=monfichier.bat

    Le code d'inclusion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for /f "eol=# tokens=* delims=" %%i in ('type setvars.cfg') do (set %%i)

    Pour utiliser les variables, après le code d"inclusion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sqlplus %MDP_USER% @test.sql
    call "%BAT_LOCATION_MONFICHIER%\monfichier.bat"

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/06/2014, 18h38
  2. Batch : Variable d'environnement
    Par westdigit dans le forum Windows XP
    Réponses: 0
    Dernier message: 12/07/2011, 12h13
  3. Batch et variables d'environnement
    Par ArnSpin dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 22/04/2010, 10h45
  4. Script Batch : Variable d'environnement dans un fichier "ordinaire"
    Par falcon dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 06/05/2008, 15h54
  5. [WIN2003]définir une variable d'environnement dans un batch
    Par creezeer dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 28/08/2007, 11h25

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