[batch] [RESOLU] Enlever les " d'un fichier

Enlever les " d'un fichier [batch] [RESOLU] - Shell/Batch - Programmation

Marsh Posté le 31-08-2006 à 14:13:45    

Bonjour,
 
Je cherche à faire un batch me permettant d'enlever tous les caratères " d'un fichier texte.
Normalement assez bien habitué du scripting batch et du forum hardware, je doit avouez que je sèche.  :pt1cable:  
 
Le forum comporte bien quelque posts qui utilise la commande SET mais l'aide de windows m'aide pas specialement.  :whistle:  
 
Donc ma question:
Comment, via un script batch, enlever les carateres d'un fichier text.
ex:
fichier avant

Code :
  1. "bla"
  2. "bla"
  3. "bla"


 
fichier apres

Code :
  1. bla
  2. bla
  3. bla


 
Merci pour toute aide!
 
Cordialement.


Message édité par 90frag le 07-09-2006 à 12:08:17
Reply

Marsh Posté le 31-08-2006 à 14:13:45   

Reply

Marsh Posté le 31-08-2006 à 14:35:40    

je tenterai une boucle for avec un skip="

Reply

Marsh Posté le 31-08-2006 à 14:52:31    

Pas possible en batch, à ma connaissance.

Reply

Marsh Posté le 31-08-2006 à 15:16:40    

Je connait pas la commande skip en batch....
Je lutte à chercher des infos sur le net, si quelqu'un a une idée?

Reply

Marsh Posté le 31-08-2006 à 19:34:39    

top_rem s'est trompé.
 
skip fait partie des options de la boucle for, mais ça permet juste de zapper x premières lignes.
 
Cela dit, si tes guillemets ne sont qu'au tour des lignes et pas au milieu, une simple :

Code :
  1. for /f "..." %%i in (fichier.txt) do (echo %%~i)


fera l'affaire.
 
Dans le cas contraire, va falloir utiliser d'autres langages/outils.

Reply

Marsh Posté le 31-08-2006 à 19:46:47    

Reply

Marsh Posté le 06-09-2006 à 13:36:24    

Merci nglechau mais je peine à comprendre ton for.

Code :
  1. for /f "..." %%i in (fichier.txt) do (echo %%~i)


1/ Je ne comprend pas ce qu'il faut mettre dans les "...", l'help du for indique que ce sont les options d'exectution de la commande? donc pour moi il n'y a rien a mettre! c'est sa?
2/ De plus (oui, je sai, je suis chiant mais j'aime comprendre ce que je fait!), peut tu m'explique le %%~i?
A mon avis, il va afficher la ligne sans les premier et dernier caracteres, donc sans les "
3/ est ce que le faite de faire un echo tous de suite va réécrire tout de suite la ligne à sont emplacement dans fichier.txt?
 
Merci de ton aide

Message cité 1 fois
Message édité par 90frag le 06-09-2006 à 13:37:24
Reply

Marsh Posté le 06-09-2006 à 16:48:05    

Tout d'abord désoler pour ma première réponse un peux rapide...
 
1/ ça dépend du fichier texte que tu veux traiter, tu peux je pense utiliser le parametre "usebackq delims="  
 
2)%%~i étend le %i en supprimant les guillemets
 
3) non c'est juste un echo et pas la peine de mettre à la fin :
 
>fichier.txt
 
le batch ne traitera que la première ligne de ton fichier txt, j'ai déjà cherché une solution mais j'ai pas trouvé

Reply

Marsh Posté le 06-09-2006 à 22:11:28    

90frag a écrit :

Merci nglechau mais je peine à comprendre ton for.


Euh, si j'étais brève, c'est que j'étais partie de ce que tu te déclarais comme un(e) habitué(e) du batch, donc à l'aise avec les éléments de base dont font partie les boucles for.
 
Je me suis trompée ?
 
Pour nous situer, est-ce que tu connaissais les boucles (je ne parle pas des goto en cercle) ?

Reply

Marsh Posté le 07-09-2006 à 11:25:40    

> nglechau>  
hihi^
 
non, sa va, le batch je me debrouille assez bien....
dans le " je peine a comprendre ta boucle for" ne veut pas dire que je n'utilise jamais la boucle for.
Mon probleme est surtout l'utilisation des %%~i et autre SET ~-1;1 et autre type de commande symilaire. Est ce que sa fait de moi un gros naze des commande DOS?
Si on reste dans les confessions, je doit avouer que je galere aussi dans la modification en live de fichier texte.....
 
>top_rem>
G modifier ton script, sa marche tres bien, meme si j'arrive pas a réecrire sur le meme fichier
Merci

Message cité 1 fois
Message édité par 90frag le 07-09-2006 à 11:26:35
Reply

Marsh Posté le 07-09-2006 à 11:25:40   

Reply

Marsh Posté le 07-09-2006 à 11:35:24    

90frag a écrit :

Est ce que sa fait de moi un gros naze des commande DOS?


Faut pas être succeptible.
 
Mais j'étais vraiment étonnée et en général, je réponds en détail ou pas en fonction du niveau (déclaré) de la personne.
 

90frag a écrit :

G modifier ton script, sa marche tres bien, meme si j'arrive pas a réecrire sur le meme fichier


Ecris sur un autre puis fais un renommage. Sinon tu risque d'avoir des soucis d'écrasage.


Message édité par wackevat le 07-09-2006 à 11:36:46
Reply

Marsh Posté le 07-09-2006 à 12:07:17    

Pa bete le coup du renomage...faut pas s'embeter.
 
Merci pour votre aide!

Reply

Sujets relatifs:

Leave a Replay

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