Renommer un .txt avec son contenu en batch
Fermé
Mael730
Messages postés
49
Date d'inscription
vendredi 23 octobre 2009
Statut
Membre
Dernière intervention
9 février 2010
-
16 déc. 2009 à 12:50
dubcek Messages postés 18757 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 19 décembre 2024 - 16 déc. 2009 à 16:57
dubcek Messages postés 18757 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 19 décembre 2024 - 16 déc. 2009 à 16:57
A voir également:
- Renommer un .txt avec son contenu en batch
- Renommer plusieurs fichiers en même temps - Guide
- Comment renommer son iphone - Guide
- Fichier batch - Guide
- Le fichier à télécharger correspond au contenu brut d’un courrier électronique. de quel pays a été envoyé ce message ? - Guide
- Word a trouvé du contenu illisible - Guide
8 réponses
dvphamid
Messages postés
15
Date d'inscription
mercredi 22 juillet 2009
Statut
Membre
Dernière intervention
12 mars 2010
1
16 déc. 2009 à 13:18
16 déc. 2009 à 13:18
et pour cette chaine de caract il y a tjr le même nombre de " ; "
Battery ID:;A_S1_1El;;;Source:;SAFT;;;Battery type:;Li-ion;
Battery ID:;A_S1_1El;;;Source:;SAFT;;;Battery type:;Li-ion;
dubcek
Messages postés
18757
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
19 décembre 2024
5 623
16 déc. 2009 à 14:42
16 déc. 2009 à 14:42
hello
j'arrive.
enlever le echo pour effectuer le rename
j'arrive.
enlever le echo pour effectuer le rename
C:> type f1.txt Date/Time:;16/12/2009;10:57:05;;;;;;;Version: V 1.600.386; Operator:;; Battery ID:;A_S1_1El;;;Source:;SAFT;;;Battery type:;Li-ion; Nominal voltage:;4.00;V;;Nominal current:;6.50;A;;Nominal capacity:;6.50;Ah; Program:;Sim_1elm; Circuit:;Cyc_P4-1; Test section:;TS000002;;;Comment:;Comment.;;;Start of test:;08/12/2008;15:37:19;;;End of test:;08/12 /2008;16:34:09; C:> type aa.bat @echo off set FICHIER=f1.txt for /f "delims=/; tokens=5" %%a in ('findstr "Date" %FICHIER%') do ( for /f "delims=; tokens=2,4,6" %%b in ('findstr "Battery" %FICHIER%') do ( for /f "delims=; tokens=8" %%e in ('findstr "Nominal capacity" %FICHIER%') do ( echo ren %FICHIER% %%a_%%b_%%c_%%d_%%e.txt ))) C:> aa ren f1.txt 2009_A_S1_1El_SAFT_Li-ion_6.50.txt
Mael730
Messages postés
49
Date d'inscription
vendredi 23 octobre 2009
Statut
Membre
Dernière intervention
9 février 2010
1
16 déc. 2009 à 16:20
16 déc. 2009 à 16:20
Merci dubcek, j'ai un autre problème:
pour un autre fichier j'ai une variable avec un espace: %%b= A S1_1El
donc pour le echo tout va bien le nom du fichier s'affiche nikel mais par contre la fonction rename ne prend pas les espaces apparemment==>la syntaxe de la commande est incorrect.
tu as une astuce?
pour un autre fichier j'ai une variable avec un espace: %%b= A S1_1El
donc pour le echo tout va bien le nom du fichier s'affiche nikel mais par contre la fonction rename ne prend pas les espaces apparemment==>la syntaxe de la commande est incorrect.
tu as une astuce?
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
16 déc. 2009 à 13:06
16 déc. 2009 à 13:06
Veux-tu le faire absolument en batch?
As-tu excel sous la main?
As-tu excel sous la main?
Mael730
Messages postés
49
Date d'inscription
vendredi 23 octobre 2009
Statut
Membre
Dernière intervention
9 février 2010
1
16 déc. 2009 à 13:07
16 déc. 2009 à 13:07
Oui absolument en batch!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mael730
Messages postés
49
Date d'inscription
vendredi 23 octobre 2009
Statut
Membre
Dernière intervention
9 février 2010
1
16 déc. 2009 à 13:27
16 déc. 2009 à 13:27
Oui il y a toujours le même nombre de ";"
Mael730
Messages postés
49
Date d'inscription
vendredi 23 octobre 2009
Statut
Membre
Dernière intervention
9 février 2010
1
16 déc. 2009 à 13:49
16 déc. 2009 à 13:49
Je pense qu'il faut utiliser delims et token dans une boucle mais le problème c'est que les lignes sont toutes différentes!
dubcek t'es dans le coin??
dubcek t'es dans le coin??
Mael730
Messages postés
49
Date d'inscription
vendredi 23 octobre 2009
Statut
Membre
Dernière intervention
9 février 2010
1
16 déc. 2009 à 16:35
16 déc. 2009 à 16:35
Tu peut me dire aussi ce qui ne vas pas la dessous? Il faudrait que le script balaye tout le dossier à la recherche de fichiers .txt et qu'il effectue l'opération sur tout ces fichiers:
@echo off
for /f "delims=" %%x in ('dir /b *.txt') do (
set FICHIER=%%x
for /f "delims=/; tokens=5" %%a in ('findstr "Date" %FICHIER%') do (
for /f "delims=; tokens=2,4,6" %%b in ('findstr "Battery" %FICHIER%') do (
for /f "delims=; tokens=8" %%e in ('findstr "Nominal capacity" %FICHIER%') do (
echo ren %%x %%a_%%b_%%c_%%d_%%e.txt
))))
merci d'avance
@echo off
for /f "delims=" %%x in ('dir /b *.txt') do (
set FICHIER=%%x
for /f "delims=/; tokens=5" %%a in ('findstr "Date" %FICHIER%') do (
for /f "delims=; tokens=2,4,6" %%b in ('findstr "Battery" %FICHIER%') do (
for /f "delims=; tokens=8" %%e in ('findstr "Nominal capacity" %FICHIER%') do (
echo ren %%x %%a_%%b_%%c_%%d_%%e.txt
))))
merci d'avance
dubcek
Messages postés
18757
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
19 décembre 2024
5 623
16 déc. 2009 à 16:57
16 déc. 2009 à 16:57
ajouter setlocal enableDelayedExpansion et remplacer % par ! pour la variable FICHIER
@echo off setlocal enableDelayedExpansion for /f "delims=" %%x in ('dir /b *.txt') do ( set FICHIER=%%x for /f "delims=/; tokens=5" %%a in ('findstr "Date" !FICHIER!') do ( for /f "delims=; tokens=2,4,6" %%b in ('findstr "Battery" !FICHIER!') do ( for /f "delims=; tokens=8" %%e in ('findstr "Nominal capacity" !FICHIER!') do ( echo ren !FICHIER! %%a_%%b_%%c_%%d_%%e.txt ))))