2016-09-29 1 views
3

Ich habe das folgende Skript, aber wie kann ich das% mytimestamp% als 20160929_132659 yyyymmdd_hhmmss formatieren?Wie mache ich den Dateinamen als yyyymmdd_hhmmss?

wo ich bin immer ungültige Ausrichtung und mit Komma:

di29092016_132659,71

set mydate=%date:/=% 
set mytime=%time::=% 
set mytimestamp=%mydate: =%_%mytime:.=_% 

if exist "C:\scan\scan.zip" (
    if exist "\\be\c$\doc\scan.zip" (
    copy C:\scan\scan.zip "\\be\c$\doc\%mytimestamp%scan.zip" 
) else (
    copy C:\scan\scan.zip "\\be\c$\doc" 
) 

) 
+1

Was die Ausgaben von 'echo% date% sind' und 'echo% time%'? – SomethingDark

+1

Mögliches Duplikat von [Wie bekomme ich die aktuelle Datetime in der Windows-Befehlszeile, in einem geeigneten Format für die Verwendung in einem Dateinamen?] (Http://stackoverflow.com/questions/203090/how-to-get-current-datetime-on -windows-Kommandozeile-in-einem-geeigneten-Format-für-uns) – aschipfl

+1

'für/F" Token = 2-7 ​​delims = /:., "%% a in ("% date%% time% ") setze mytimestamp = %% c %% b %% a _ %% d %% e %% f' Wenn das nicht stimmt, beschuldige meine Kristallkugel, die mir falsche Informationen gegeben hat! – Aacini

Antwort

1

Versuchen Sie dies in Ihrer Batch-Datei:

for /f "usebackq tokens=1,2,3,4,5,6,7 delims=/:. " %%a in (`echo %DATE% %TIME%`) do set NOW=%%d%%b%%c_%%e%%f%%g 
@echo now: %NOW% 
+0

Es ist so dreckig Code anzusehen !! Aber es funktioniert!! – YumYumYum

Verwandte Themen