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 :

Script pour renommer un fichier XML en fonction de la valeur d'une de ses balises


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Mai 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 2
    Par défaut Script pour renommer un fichier XML en fonction de la valeur d'une de ses balises
    Bonjour,

    Sauriez vous comment réaliser un script qui renomme un fichier xml en fonction de la valeur d'une des balises qu'il contient ?

    Shématisé cela donnerait le workflow suivant:

    input.xml (contient une balise <id>valeur</id>) => script.bat => output.xml (avec output = valeur)

    Merci d'avance pour vos réponses et conseils

  2. #2
    Membre Expert
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013
    Par défaut
    Salut,

    celà depends de la structure de ton fichier Xml..

    mais j'ai fait à l'aveuglette un fichier Xml : (file.xml) puis un code qui le renomme selon l'ID


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <Tips>
     <unPeuDeTout>
      <Info>
        <titre>mettre son nom dans la barre des tâches</titre>
        <desc> 
          <ParLeRegistre>
           <clef>HKCU\Control Panel\International</clef>
           <valeur>s1159 s2359</valeur> 
          </ParLeRegistre>
        </desc>
      </Info>
      <Info>
        <titre>comment changer mon nom</titre>
        <desc>
          <ParUnId>
            <id>Mon nouveau nom</id>
          </ParUnId>
        </desc>
      </Info>
      <Info>
       <titre>Ouvrir une nouvelle instance du registre</titre>
       <desc>regedit -m ou bien regedit /m</desc>
      </Info>
     </unPeuDeTout>
    </Tips>
    et voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @echo off
    
    ::_Chemin + nom du fichier Xml
    Set fileXml=C:\dossier 3\file.xml
    
    for /f "tokens=3 delims=<>" %%i In (
      'type "%fileXml%"^|findstr /c:"<id>"') do (
          ren "%fileXml%" "%%i.xml")
    pause

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Mai 2007
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 2
    Par défaut Automatisation du renommage de fichier
    Merci pour ton code qui répond parfaitement parfaitement à ma question. Super sympas.

    Maintenant je cherche à automatiser tout ça.

    L'idée serait de détecter l'arrivée du fichier XML dans un répertoire temporaire de "renomage", le renommer et le bouger dans un répertoire final si tout s'est bien passé.
    Si une erreur est survenue il faudrait idéalement pouvoir recommencer un certain nombre de fois puis le bouger dans un répertoire erreur si le nombre d'essais est dépassé.

    Merci encore

  4. #4
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Salut,
    le mieux est d'utiliser WMI.

  5. #5
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Regarde ce tuto, mais en batch cela me semble difficile à réaliser même avec WMIC ou alors il faut creuser

Discussions similaires

  1. Script awk ou ksh pour découper un fichier xml
    Par Griffith dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 15/05/2007, 22h58
  2. [MySQL] Script PHP pour générer un fichier xml
    Par totofe49 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/05/2007, 15h12
  3. Recherche d'un script PHP pour renommer des fichiers en masse
    Par pekka77 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 19/11/2006, 23h43
  4. Réponses: 1
    Dernier message: 10/09/2006, 16h09
  5. Appel d'une fonction pour renommer un fichier
    Par navis84 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/04/2006, 15h13

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