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 :

Remplacer une plusieurs chaines de caractères différentes et enregistrer dans des fichiers différents


Sujet :

Scripts/Batch

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Octobre 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2013
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Remplacer une plusieurs chaines de caractères différentes et enregistrer dans des fichiers différents
    Bonjour,
    voici mon souci.
    J'ai un fichier de Base (Fichier_base.txt) dans lequel est écrit "Identifiant/MDP".
    J'aimerai à partir du fichier (Fichier_base.txt) :
    - remplacer la chaine Identifiant/MDP, par "TOTO/TUTU" et enregistrer sous le nom Toto.txt
    - puis remplacer la chaine Identifiant/MDP, par "RORO/BABA" et enregistrer sous le nom Riri.txt.

    Est-ce possible de faire cela, tout en sachant que je fais une quarantaine de remplacement et donc en sortie une quarantaine de fichier différents.
    Mrci pour votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut

    Si votre phrase est la même et que vous avez une seule variable à modifier echo Il est nécessaire de rentrer ces identifiants <Variable à modifier>
    Alors, on peut faire une génération de fichiers avec deux boucles for comme dans ce code :
    Code BAT : 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
    28
    29
    30
    31
    32
    33
    @echo off
    Mode 70,3 & color 0A
    >nul chcp 65001
    Title Génération Multi fichiers avec des identifiants
     
    Set Identifiants="TOTO/TUTU" "RORO/BABA" "COCO/KIKI" "Hello/HelloWorld" "Chichi/azerty" ^
    ^ "Bibi/qwerty" "Hackoo/123456" "olees/va1mpire" "ravine68/l231" "wlacroix/2011" ^
    ^ "jessica/2000" "dgleiber/1eHello" "micr0d0t/15664" "robk33/k85453" "stopp/3333333" ^
    ^ "debra/scoo123" "bullard/516" "dwagner/j58eb03" "rpollack/n7ob12" "arringtonpm/44gilast" ^
    ^ "alijb80/only1god" "jazzinjazmin/120595" "chadnolan5790/k5790" "cerberus70/cassie01" "klewis91/cartoon75" ^
    ^ "janeway49/g85555nd1" "lorettaamposta/dancing1" "rozsea1/pelican12" "rod2fast4u/crslt21" "selenite/ress44" ^
    ^ "snapongeo/quilts4me" "milesd421/bigboy555" "artistic-1/icecream1" "j2592/dayinara1" "janmckendree/123cjan1" ^
    "mlhamby/j9655n022" "mloverine/badgers91" "ktmbiker50/d185b1ke" "ellisc/sun584vil1" "apratt3/alb123any21"
     
    Set "FolderOutput=%~dp0Identifiants"
    :: Ici juste on crée un dossier pour regrouper tous les fichiers générés dedans
    If Not Exist "%FolderOutput%" MD "%FolderOutput%"
     
    @For %%# in (%Identifiants%) do ( 
        @for /f "tokens=1 delims=/" %%A in ('echo %%~#') do ( 
            Call :Ecrire_Phrase_Base %%# "%FolderOutput%\%%A.txt"
        )
    )
     
    Explorer "%FolderOutput%" & Exit 
    ::---------------------------------------------------------
    :Ecrire_Phrase_Base <Phrase> <Fichier de Sortie>
    Cls
    echo(
    echo            Génération en cours de %1 ...
    echo Il est nécessaire de rentrer ces identifiants %1>"%~2"
    Exit /b
    ::---------------------------------------------------------

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Octobre 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2013
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Bonjour, merci de votre intérêt à mon problème. En fait j'ai à peu près 1000 fois la chaine de caractère à remplacer dans le fichier, et je ne peux raisonnablement pas remplacer une phrase pour le coup.
    Il faudrait que je remplace les identifiants qui sont multiples dans un fichier.
    Merci

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    En fait j'ai à peu près 1000 fois la chaine de caractère à remplacer dans le fichier
    Pourrait on avoir un exemple de ce fichier ?

  5. #5
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    puis remplacer la chaine Identifiant/MDP, par "RORO/BABA" et enregistrer sous le nom Riri.txt
    Je ne comprend pas la logique

  6. #6
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut
    Citation Envoyé par elblobo Voir le message
    Bonjour, merci de votre intérêt à mon problème. En fait j'ai à peu près 1000 fois la chaine de caractère à remplacer dans le fichier, et je ne peux raisonnablement pas remplacer une phrase pour le coup.
    Il faudrait que je remplace les identifiants qui sont multiples dans un fichier.
    Merci

    Dans ce cas envoyez nous le vrai fichier complet par pièce-jointe pour avoir une idée !

  7. #7
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    Je propose 2 fichiers d'entrée (voir pj)

    Et le script batch pour le traitement :

    Code batch : 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
    @echo off
     
    set IdentifiantsFile=Fichier_Identifiants.txt
    set BaseFile=Fichier_base.txt
     
    SETLOCAL ENABLEDELAYEDEXPANSION
     
    Set "FolderOutput=%~dp0Identifiants"
    If Not Exist "%FolderOutput%" MD "%FolderOutput%"
     
    For /f "tokens=1,2 delims=/" %%a in (%IdentifiantsFile%) do (
    	(For /f "tokens=*" %%c in (%BaseFile%) do (
    	set line=%%~c
    	echo !line:Identifiant/MDP=%%~a/%%~b!
    	)) > "%FolderOutput%\%%~a.txt"
    )
     
    pause
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/09/2011, 01h01
  2. Réponses: 4
    Dernier message: 31/08/2010, 17h45
  3. Réponses: 2
    Dernier message: 22/07/2008, 17h16
  4. Réponses: 1
    Dernier message: 16/09/2007, 14h14
  5. Réponses: 2
    Dernier message: 07/03/2007, 10h46

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