Modification
Résolu
Jordi.D
Messages postés
60
Statut
Membre
-
Jordi.D -
Jordi.D -
Bonsoir a tous
J'aurais besoin d'aide s'il vous plaît donc j'explique mon problème.
J'ai un fichier *.reg il faut que je modifie N fois la valeur contenu dans le fichier car il dupliquer à chaque fois ( On connaît le numéro de la ligne)
Contenu du fichier:
"; The RegSave Utility created this file
; This utility was written by Paul Hurford, Symbol EMEA TS
; You use the utility at your own risk
;
; Template File : \Application\RegSave.Reg
; Program Version : 2.20.01 May xx xxx
; File created 1/11/2003 00:27:58
;
[HKEY_LOCAL_MACHINE\Ident]
"Name"="BAM201"
Il faut que je modifie le "BAM201" suivant une suite logique de la duplication d'un fichier
Ex si mon fichier Ce nomme V206
La ligne "Name"="BAM206" ainsi de suite
J'aurais besoin d'aide s'il vous plaît donc j'explique mon problème.
J'ai un fichier *.reg il faut que je modifie N fois la valeur contenu dans le fichier car il dupliquer à chaque fois ( On connaît le numéro de la ligne)
Contenu du fichier:
"; The RegSave Utility created this file
; This utility was written by Paul Hurford, Symbol EMEA TS
; You use the utility at your own risk
;
; Template File : \Application\RegSave.Reg
; Program Version : 2.20.01 May xx xxx
; File created 1/11/2003 00:27:58
;
[HKEY_LOCAL_MACHINE\Ident]
"Name"="BAM201"
Il faut que je modifie le "BAM201" suivant une suite logique de la duplication d'un fichier
Ex si mon fichier Ce nomme V206
La ligne "Name"="BAM206" ainsi de suite
2 réponses
-
Re bonjour,
J'ai un fichier *.reg il faut que je modifie N fois la valeur contenu dans le fichier car il dupliquer à chaque fois ( On connaît le numéro de la ligne)
J'ai un doute sur ta question....
Tu dis avoir 1 Fichier
Et que la ligne à modifier (dont tu connais le numéro) est dupliquée ....
Seulement, dans l'exemple que tu donnes de ton fichier.. il n'y a qu'une seule ligne...
Donc.. soit tu as plusieurs fichiers
Soit l'exemple que tu donnes est incomplet...
Rappelles toi ce que je t'ai dit dans ta précédente discussion au sujet de la clarté de tes explications....
Merci donc de préciser exactement ce qu'il en est et de donner un exemple "complet"
-
-
-
Donc ce n'est pas plusieurs lignes dans un fichier
Ce n'est pas non plus plusieurs fichiers dans un dossier
Maintenant c'est plusieurs dossiers qui contiennent chacun un fichier ?
C'est bien ça ?
Et tous les dossiers se nomment de la même manière hormis le chiffre à la fin ?
Le fichier reg à l'intérieur de ce dossier a comme nom *.reg ?? bizarre que l'étoile soit autorisée dans le nom du fichier...
Donc :
Tu peux faire un script qui récupère la liste des dossiers
Puis faire une boucle sur cette liste
dans la boucle :
récupérer le nom du dossier
extraire, à l'aide d'une regex, le numéro qui se trouve dans le nom
en t'inspirant du script que je t'ai donné pour la modification de ligne dans ta précédente question, procéder au renommage (il faut un peut le modifier pour retirer les msgbox par exemple ) de la variable dans le fichier .reg
puis on passe au dossier suivant...
En complément :
Exemple de regex :
str = "TestN15" Set RegEx = CreateObject("vbscript.regexp") RegEx.Pattern = "[^\d]" RegEx.IgnoreCase = True RegEx.Global = True numStr=RegEx.Replace(str, "") msgbox numStr
incrémenter une variable -
Pour récupérer la liste des dossiers :
folders = getFolders("c:\") for each dossier in folders 'ici tu code le traitement .. '... ' par exemple .. la récupération du numéro du dossier : Set RegEx = CreateObject("vbscript.regexp") RegEx.Pattern = "[^\d]" RegEx.IgnoreCase = True RegEx.Global = True numStr=RegEx.Replace(dossier, "") msgbox numStr ' fin de la boucle sur les dossiers next function getFolders(directory) Dim arr1() Dim folder Dim fsoFolder Dim subfolders Dim i Set fsoFolder = CreateObject("Scripting.FileSystemObject") Set folder = fsoFolder.GetFolder(directory) Set subfolders = folder.SubFolders i = 0 for each objFolder in subfolders REDIM PRESERVE arr1(i+1) arr1(i) = objFolder.Name i = i+ 1 next getFolders = arr1 End Function
Je te laisse coder le reste -
-
-