Supportnet / Forum / BS-Sonstige
Zeitformat bestimmen
Frage
Hallo, ich möchte mit einer Batch Anweisung einen Ordner erstellen lassen der das Aktuelle Datum und die Aktuelle Zeit als namen trägt.
Meine Datei sieht bis jetzt so aus:
@echo off
echo Daten anzeigen:
time /t
date /t
echo Zuweisen...
set Stunden=%Time:~0,2%
set Minuten=%Time:~3,2%
set Sekunden=%Time:~6,2%
set Zeit=%stunden%.%minuten%.%sekunden%
set Datum=%date%
echo Variable prüfen:
echo Stunden: %stunden%
echo Minuten: %minuten%
echo Sekunden: %sekunden%
echo Zeit: %Zeit%
echo Datum: %datum%
echo Ordner erstellen
md "c:\temp\%Datum%_%Zeit%"
Habe das alles nur Testweise so ausfürhlich gemacht!
Das Funktioniert soweit einwandfrei, aber sobald die Stunden bei der Uhrzeit nur noch einstellig sind (0:00 - 9:59) bekomme ich bei der Uhrzeit ein Leerzeichen rein, dann funktioniert garnix mehr!
Ich würde gern die Variabel %Stunden% zweistellig formatieren, nur hab ich bis jetzt noch nix gefunden!
Bitte um Hilfe...
Besten dank im voraus, bye kinglazee
Antwort 1 von kinglazee
sorry fürs Doppelpost!
Ich muss mich korrigieren, es geht auch mit den Uhrzeiten wo die Stunden einzellig sind, nur:
1. Sieht es dann doof aus,
2. werden die Ordner nachher nicht mehr richtig sortiert!
Also müsste der Wert %Stunden% doch zweistellig formatiert werden.
bye kinglazee
Ich muss mich korrigieren, es geht auch mit den Uhrzeiten wo die Stunden einzellig sind, nur:
1. Sieht es dann doof aus,
2. werden die Ordner nachher nicht mehr richtig sortiert!
Also müsste der Wert %Stunden% doch zweistellig formatiert werden.
bye kinglazee
Antwort 2 von nobody00
Versuchs mal damit:
Bitte aber darauf achten, dass der If...Else Anweisung in einer Zeile steht!
@echo off
echo Daten anzeigen:
time /t
date /t
echo Zuweisen...
if %Time:~0,2% gtr 9 (set Stunden=%Time:~0,2%) else set Stunden=0%Time:~1,1%
set Minuten=%Time:~3,2%
set Sekunden=%Time:~6,2%
set Zeit=%stunden%.%minuten%.%sekunden%
set Datum=%date%
echo Variable pruefen:
echo Stunden: %stunden%
echo Minuten: %minuten%
echo Sekunden: %sekunden%
echo Zeit: %Zeit%
echo Datum: %datum%
pause
echo Ordner erstellen
md "c:\temp\%Datum%_%Zeit%"
Bitte aber darauf achten, dass der If...Else Anweisung in einer Zeile steht!
@echo off
echo Daten anzeigen:
time /t
date /t
echo Zuweisen...
if %Time:~0,2% gtr 9 (set Stunden=%Time:~0,2%) else set Stunden=0%Time:~1,1%
set Minuten=%Time:~3,2%
set Sekunden=%Time:~6,2%
set Zeit=%stunden%.%minuten%.%sekunden%
set Datum=%date%
echo Variable pruefen:
echo Stunden: %stunden%
echo Minuten: %minuten%
echo Sekunden: %sekunden%
echo Zeit: %Zeit%
echo Datum: %datum%
pause
echo Ordner erstellen
md "c:\temp\%Datum%_%Zeit%"
Antwort 3 von manei
Hallo,
if %stunden% LSS 10 set stunden=0%stunden%.
Die Frage ist ob bei Minuten und Sekunden wenn kleiner 10 die 0 gestetzt bzw. auch verschluckt wird.
Ebenfalls beim Tag wenn kleiner 10.
Um diese Dateien auch richtig sortieren zu können, müßte das Datum mit Jahr-Monat-Tag geschrieben werden. Hier könnten dann ebenfalls die führenden Nullen fehlen.
MfG maneich
if %stunden% LSS 10 set stunden=0%stunden%.
Die Frage ist ob bei Minuten und Sekunden wenn kleiner 10 die 0 gestetzt bzw. auch verschluckt wird.
Ebenfalls beim Tag wenn kleiner 10.
Um diese Dateien auch richtig sortieren zu können, müßte das Datum mit Jahr-Monat-Tag geschrieben werden. Hier könnten dann ebenfalls die führenden Nullen fehlen.
MfG maneich
Antwort 4 von kinglazee
Danke danke für die schnellen antworten!
Okay, mit der ersten möglichkeit (mit gtr 9) Funktioniert das ganze einwandfrei.
Mich würde nur interessieren was GTR 9 und LSS 10 bedeuten, gibt es dazu Dokumente zur Hilfestellung oder Erklärung?
Man will ja wissen was man in seinen Dateien drin hat ;-)
mfg kinglazee
Okay, mit der ersten möglichkeit (mit gtr 9) Funktioniert das ganze einwandfrei.
Mich würde nur interessieren was GTR 9 und LSS 10 bedeuten, gibt es dazu Dokumente zur Hilfestellung oder Erklärung?
Man will ja wissen was man in seinen Dateien drin hat ;-)
mfg kinglazee
Antwort 5 von manei
Hallo,
IF [/I] Wert1 OPERATOR Wert2 BEFEHL
Vergleichsoperatoren:
EQU (Wahr wenn Werte gleich)
NEQ (Wahr wenn Werte ungleich)
LSS ( Wahr wenn Wert1 kleiner Wert2)
LEQ (Wahr wenn Wert1 kleiner/gleich Wert2)
GTR (Wahr wenn Wert1 größer Wert2)
GEQ (Wahr wenn Wert1 größer/gleich Wert2)
MfG maneich
IF [/I] Wert1 OPERATOR Wert2 BEFEHL
Vergleichsoperatoren:
EQU (Wahr wenn Werte gleich)
NEQ (Wahr wenn Werte ungleich)
LSS ( Wahr wenn Wert1 kleiner Wert2)
LEQ (Wahr wenn Wert1 kleiner/gleich Wert2)
GTR (Wahr wenn Wert1 größer Wert2)
GEQ (Wahr wenn Wert1 größer/gleich Wert2)
MfG maneich