maxxyme | cybercouf a écrit :
bonjour j'ai le meme problème, mais pour l'heure! (et encore je pense que ça peut m'arriver pour la date)
explications: je suis sous win2k serveur.
si je fais:
Code :
- set svgdir=base_%date:~11,4%-%date:~8,2%-%date:~5,2%_%time:~0,2%h%time:~3,2%.sql
|
>> base_2005-02-21_ 5h15.sql
donc forcément un beau trou dans le nom au lieu d'un '0' ça passes pas
j'ai aussi essayé avec:
Code :
- FOR /F "tokens=1-2 delims=:" %%a IN ('TIME/T') DO SET time=%%ah%%b
- echo %time%
|
>> 5h15 (et non 05h15)
help !
|
Perso, j'avais le même problème, mais en utilisant un format date de type HHMMSS ce qui donnait _94412 avec un espace à la place de l'underscore.
La parade, la voici:
Code :
- for /F "tokens=1,2,3 delims=:, " %%i in ("%time%" ) do set BackUpTime=%%i%%j%%k
- if %BackUpTime% leq 99999 set BackUpTime=0%BackUpTime%
|
En fait une fois récupérée la date sous format HHMMSS avec éventuellement le "1er H" égal à un espace, je compare cette chaîne à la valeur 99999 et si elle est inférieure ou égale, je lui ajoute un 0.
En espérant que ça puisse t'aider - vu que toi c'est pour afficher sous la forme HHhMM, il faudrait malgré tout que tu adaptes ma solution.
Enfin c'est déjà une bonne chose, personne sur internet ne semble avoir trouvé ce que je propose !!!
|