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 :

récupération valeur d'une variable dans un fichier bat depuis plusieurs batch


Sujet :

Scripts/Batch

  1. #1
    Futur Membre du Club
    Homme Profil pro
    administrateur CAO
    Inscrit en
    Septembre 2024
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : administrateur CAO

    Informations forums :
    Inscription : Septembre 2024
    Messages : 4
    Par défaut récupération valeur d'une variable dans un fichier bat depuis plusieurs batch
    Bonjour,
    je souhaiterai récupérer la valeur d'une ou de plusieurs variables contenues dans un fichier .bat "10-Reglage_Variables.bat" depuis deux autres fichiers .bat situés dans des répertoires différents.

    je réussi à récupérer les valeurs que je souhaite si les deux fichiers sont dans le même répertoire en faisant un call du fichier "10-Reglage_Variables.bat" grace à l'expression %~dp0 et en utilisant la variable récupérée dans mon code :

    -----------contenu du fichier "10-Reglage_Variables.bat"
    rem chemins à mettre à jour pour projet
    SET PROJECT_PATH=\\192.168.110.245\prod\02_Projets\***\*****
    SET TRI_PROJECT=***
    SET NAME_MDB=*****
    SET PROJECT_AVEVA_PATH=%PROJECT_PATH%\03_Realisation\06_E3D\%TRI_PROJECT%
    SET PROJECT_NUM=C****
    -----------


    ******utilisation dans un fichier batch situé dans la même arborescence réseau :
    rem recuperation des variables
    call %~dp0\10-Reglage_Variables.bat

    rem lancement de E3D en mode TTY et lancement de la macro export_rvm.mac
    call C:\AVEVA\Plant\E3D3.10\launch.bat -proj=%TRI_PROJECT% VISITEUR/NGK -mdb=/%NAME_MDB% -TTY $m/%~dp0\Macro\Export_rvm_TTY.mac
    ******

    mais je n'arrive pas à le faire si le fichier .bat qui l'appelle n'est pas dans le même dossier.
    Ce fichier "10-Reglage_Variables.bat" contients les différents chemins vers différents dossiers et fichier, et l'idée est de ne le mettre à jour qu'une seule fois au début du projet et d'éviter de le dupliquer inutilement.

    je précise que je suis totalement débutant sur le sujet, ce n'est peut-être pas du tout la meilleur méthode....il vaudrait peut-être mieux passer par un fichier .txt, je ne sais pas.

    en résumé ma demande est comment récupérer la valeur d'une variable dans un fichier depuis un autre emplacement sur le réseau, j'espère avoir été clair....

    D'avance merci!

  2. #2
    Futur Membre du Club
    Homme Profil pro
    administrateur CAO
    Inscrit en
    Septembre 2024
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : administrateur CAO

    Informations forums :
    Inscription : Septembre 2024
    Messages : 4
    Par défaut
    Une solution qui pourrait me dépanner dans un 1er temps serait de récupérer une partie du chemin d'accès au fichier .bat :

    \\192.168.110.xxx\prod\02_Projet\CLIENT\CXXXX_Projet_PPP\03_Realisation....

    Comment puis-je récuperer la chaine de caractères CXXXX dans une variable?
    D'avance merci!

  3. #3
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    667
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 667
    Par défaut
    Bonjour,

    Si ton fichier à charger est dans un dossier réseau, tu peux faire
    pushd "\\machine\chemin" && (call fichier.bat & popd)

  4. #4
    Futur Membre du Club
    Homme Profil pro
    administrateur CAO
    Inscrit en
    Septembre 2024
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : administrateur CAO

    Informations forums :
    Inscription : Septembre 2024
    Messages : 4
    Par défaut
    Merci kaitlyn pour votre réponse !

    cela règle en effet une partie de mon problème, cependant j'ai encore une question sur ce sujet.
    dans votre proposition il faut entrer le chemin réseau en dur, or ces fichiers vont être déployés sur plusieurs projets et je souhaiterai ne pas avoir à les modifier à chaque démarrage de projet.
    le fichier que je souhaite appeler sera toujours dans la même arborescence dans chaque projet, il n'y aura en fait que le nom du client et le nom du projet qui changera d'une affaire à l'autre.
    par exemple :
    projet 1 : \\192.168.110.xxx\prod\02_Projet\CLIENT1\C1111_Projet_AAA\03_Realisation
    projet 2 : \\192.168.110.xxx\prod\02_Projet\CLIENT2\C2222_Projet_BBB\03_Realisation

    serait-il envisageable de récupérer le chemin courant du fichier .bat lancé dans une variable, et de n'extraire que la partie "CLIENT\CXXXX_Projet_AAAA" dans une autre variable, pour pouvoir utiliser cette dernière dans la syntaxe que vous m'avez indiqué?

    D'avance merci!

  5. #5
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    667
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 667
    Par défaut
    Je ne comprends pas ta question.
    Néanmoins, si tu as une variable projet_x=\\x\y\z\a\b\c ,
    tu peux récupérer la partie qui t'intéresse avec
    for /f "tokens=4,5 delims=\" %%i in ("%projet_x%") do set "client_x=%%~i\%%~j"

  6. #6
    Futur Membre du Club
    Homme Profil pro
    administrateur CAO
    Inscrit en
    Septembre 2024
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : administrateur CAO

    Informations forums :
    Inscription : Septembre 2024
    Messages : 4
    Par défaut
    Bonjour kaitlyn et merci pour ta réponse !

    j'ai pu écrire ce que je souhaitais grâce à tes indications !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/05/2017, 02h22
  2. Réponses: 8
    Dernier message: 04/07/2013, 18h12
  3. valeur d'une variable dans un nom de fichier
    Par g.abdou dans le forum VBScript
    Réponses: 7
    Dernier message: 24/06/2010, 12h16
  4. Réponses: 2
    Dernier message: 08/06/2006, 13h48
  5. Réponses: 13
    Dernier message: 14/06/2003, 22h15

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