Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1128 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Aide substitution de variable DOS SVP (mille merci nglechau)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide substitution de variable DOS SVP (mille merci nglechau)

n°1198843
Val061
Posté le 13-09-2005 à 20:03:52  profilanswer
 

Voila merci d'avance pour votre aide ...
 
Je souahite récupérer à la volée les dates de creation de fichiers dans un repertoire et substituer l'année au format AA a la variable au format AAAA...
 
Donc je script omme ceci :
 
for /f "skip=7 usebackq tokens=1,2,3 delims=/" %%A in (`dir /tc`) do set _ANNEE==%%C:~-2%
 
Hors ca ne marche pas :-[
 
Je test donc :
 
for /f "skip=7 usebackq tokens=1,2,3 delims=/" %%A in (`dir /tc`) do set _AAAA==%%C&set _AA:~-2%
 
Depuèis je bloque la-dessus et demande votre aide ^^


Message édité par Val061 le 15-09-2005 à 00:20:05
mood
Publicité
Posté le 13-09-2005 à 20:03:52  profilanswer
 

n°1198852
wackevat
Posté le 13-09-2005 à 20:30:53  profilanswer
 

Salut,
 
Tu peux essayer :
 

Code :
  1. @echo off
  2. setlocal enableExtensions
  3. for %%f in (*.*) do (
  4.   set TIMESTAMP=%%~tf
  5.   call :processFile
  6. )
  7. goto end
  8. :processFile
  9. set FDD=%TIMESTAMP:~0,2%
  10. set FMM=%TIMESTAMP:~3,2%
  11. set FYY=%TIMESTAMP:~8,2%
  12. echo Jour=%FDD% ; Mois=%FMM% ; Annee=%FYY%
  13. :end
  14. endlocal&&goto :eof


 
Attention : un seul = et non pas deux pour assigner une valeur à une variable.

n°1198932
Val061
Posté le 13-09-2005 à 23:31:02  profilanswer
 

mille merci : je test de suite
 
pour le == : c une faute de frappe ^^

n°1198936
Val061
Posté le 13-09-2005 à 23:42:02  profilanswer
 

Code :
  1. setlocal enableExtensions
  2. for %%f in (*.*) do (
  3.   set TIMESTAMP=%%~tf
  4.   call :processFile
  5.   echo %FMM%%FDD%%FHH%%FMN%%FYY% %NAM%
  6. )
  7. goto end
  8. :processFile
  9. set FDD=%TIMESTAMP:~0,2%&set FMM=%TIMESTAMP:~3,2%&set FYY=%TIMESTAMP:~8,2%&for /f "usebackq tokens=1,2,3,4,5,6,7,8
  10. delims=/: " %%A in (`dir /tc`) do set FHH=%%D&SET FMN=%%E&SET NAM=%%G&echo %FDD%/%FMM%/%FYY%
  11. :end
  12. endlocal&&goto :eof


 
En fait je suis trop fatigué :-D je vois plus clair du tout
 
Pourquoi la ca marche pas ?
 
En fait j'ai besoin d'un peu plus que la date :
 
je souhaiterai recuperer dans le contenu d'un rep, les variables suivantes :
 
jour=JJ
mois=MM
année=AA
heure=HH
minutes=NN
nom du file=NAME
 
et bien sur afficher tout ceci pour chaque occurrence trouvée.


Message édité par Val061 le 14-09-2005 à 01:14:53
n°1199263
wackevat
Posté le 14-09-2005 à 12:18:42  profilanswer
 

C'est toujours pareil :

Code :
  1. @echo off
  2. setlocal enableExtensions
  3. for %%f in (*.*) do (
  4.   set FILE=%%~ff
  5.   set TIMESTAMP=%%~tf
  6.   call :processFile
  7. )
  8. goto end
  9. :processFile
  10. set FDD=%TIMESTAMP:~0,2%
  11. set FMM=%TIMESTAMP:~3,2%
  12. set FYY=%TIMESTAMP:~8,2%
  13. set FHH=%TIMESTAMP:~11,2%
  14. set FNN=%TIMESTAMP:~14,2%
  15. echo %FILE% (%TIMESTAMP%)
  16. echo     Jour=%FDD% ; Mois=%FMM% ; Annee=%FYY% ; Heure=%FHH% ; Minutes=%FNN%
  17. :end
  18. endlocal&&goto :eof

n°1199845
Val061
Posté le 14-09-2005 à 23:11:40  profilanswer
 

Wazzzzzzzzzza et toujours mille mercis de prendre de ton temps pour m'aider ^^
 

Code :
  1. @echo off
  2. setlocal enableExtensions
  3. for %%f in (*.*) do (
  4.   set FILE=%%~ff
  5.   set TIMESTAMP=%%~tf
  6.   call :processFile
  7. )
  8. goto end
  9. :processFile
  10. set FDD=%TIMESTAMP:~0,2%
  11. set FMM=%TIMESTAMP:~3,2%
  12. set FYY=%TIMESTAMP:~8,2%
  13. set FHH=%TIMESTAMP:~11,2%
  14. set FNN=%TIMESTAMP:~14,2%
  15. echo %FILE% (%TIMESTAMP%)
  16. echo     Jour="%FDD%" ; Mois="%FMM%" ; Annee="%FYY%" ; Heure="%FHH%" ; Minutes="%FNN%"
  17. :end
  18. endlocal&&goto :eof


 
J'ai rajouté des "" dans ton exemple a cause d'un bug : pourquoi y'a t'il dans toutes les variables sauf la première (%FDD%) un indésirable ESPACE :-(


Message édité par Val061 le 14-09-2005 à 23:14:53
n°1199914
wackevat
Posté le 14-09-2005 à 23:40:14  profilanswer
 

Quel bug parles-tu ? Attention, quand tu copies le code directement du forum, vérifie et supprime les espaces de trop enfin de chaque ligne. C'est peut-être ça ?

n°1199926
Val061
Posté le 15-09-2005 à 00:18:47  profilanswer
 

loooooool : j'ai des fois l'impression (confirmée je pense ^^) d'être un neuneu :-D
 
Ecoute je te remercie INFINIMENT d'avoir completement resolu mon pb...
 
Et surtout de m'avoir appris a utiliser un call sur goto ...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Aide substitution de variable DOS SVP (mille merci nglechau)

 

Sujets relatifs
Besoin d'aide pour Javascript BBCode[Résolu] J'ai besoin d'aide pour quelques base.
[Résolu]Syntaxe Range avec variablephp debutant aide script
Comment utiliser une variable dans un objet ?declarer une variable de session dans une fonction
Aide smart pointers et STL[PHP] Intégrer une variable récupérée d'une URL dans un form
aide SQL/PRO*CBesoin aide pour acceder à StarTeam via command line
Plus de sujets relatifs à : Aide substitution de variable DOS SVP (mille merci nglechau)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR