2010-11-08 26 views

Répondre

1

Essayez

7z a %DATE:~-4%-%DATE:~4,2%-%DATE:~7,2%.7z *.*  for (YYYY-MM-DD) 

ou

7z a %DATE:~7,2%-%DATE:~4,2%-%DATE:~-4%.7z *.*  for (DD-MM-YYYY) 

(* * est le masque pour les fichiers à sauvegarder. up)

0

Vous pouvez utiliser WMI pour obtenir les détails de votre date dans un format spécifique. Le problème avec la sortie de date (et la variable d'environnement %date%) est que c'est très spécifique aux paramètres régionaux.

Si vous exécutez:

wmic path win32_localtime get day^,month^,year^ /format:csv 

vous verrez la sortie que vous devez traiter.

Le script suivant vous obtiendrez le format yyyy-mm-dd que vous avez besoin (en utilisant le jour de la semaine comme la clé de tri primaire n'est pas une bonne idée):

@echo off 
for /f "skip=2, tokens=2-4" delims=," %%a in ('wmic path win32_localtime get day^,month^,year^ /format:csv') do (
    set /a ymd = 10000 * %%c + 100 * %%b + %%a 
) 
set ymd=%ymd:~0,4%-%ymd:~4,2%%ymd:~6,2% 
echo %ymd%