[batch] modifier une ligne d'un texte (doubler un caractere)

modifier une ligne d'un texte (doubler un caractere) [batch] - Shell/Batch - Programmation

Marsh Posté le 14-08-2007 à 17:12:52    

bonjour,
 
je desire modifier ma base de registre , pour ca je crée un fichier.reg avec la commance echo.
avec  
for /f "tokens=*" %%a in ('cd') do set chemin=%%a
je recuper dans la variable chemin mon path.
 
Quand j utilise mon path pour genere mon fichier de base de registre  .reg tout les syntaxe sont bonne sauf les natives qui sont evidemant de cette forme.
"native"="G:\monessai\ici\estla"     :cry:  
 
alors qu elle doivent etre comme pour pouvoir etre inscrite dasn la base de registre:
 
"native"="G:\\monessai\\ici\\estla"  
 
je sais que avec la comamnde:
 
for /f "usebackq delims=" %%1 in ("monfichier.reg" ) do (echo %%1)
 
je peux editer toute les ligne. et je sais que toutes les ligne que je veux modifier commence toujours par   "native"="
MAis je ne sasi pas comment extraire ces lignes n y comment ajouter les \ qui manque...
 
Des idées des sugestions ??    :??:

Reply

Marsh Posté le 14-08-2007 à 17:12:52   

Reply

Marsh Posté le 14-08-2007 à 17:52:39    

Pour une variable VAR:
set VAR=%VAR:\=\\%

Reply

Marsh Posté le 14-08-2007 à 18:44:54    

apres quelque test je m apersoie que echo %VAR%
affiche %VAR:\=\\%  
je comprend que le but est ici de passer une variable qui va double les \ mais je ne voie pas du tout comment ?

Reply

Marsh Posté le 15-08-2007 à 07:58:13    

Si tu regardes dans l'aide de set, tu vas voir que %VAR:str1=str2% remplace la chaine str1 dans %VAR% par str2, donc dans ton cas \ par \\.

Reply

Marsh Posté le 10-10-2007 à 16:42:46    

Pour remplacer un mot par un autre mot dans un fichier.txt on peut utiliser la commande Switch, voici la syntaxe :

Code :
  1. Switch fichier.txt «\» «\\»


Télécharger switch ici : http://powerusers.info/modules.php [...] eA&show=10

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed