Batchdatei - CSV-Datei umbennen mit Zeitstempel - zweistellige Stundenanzeige
Hallo,
man hat mir hier bereits sehr geholfen, jedoch bin ich noch nicht
ganz am Ziel und ich hoffe man kann mir helfen.
Die Grundaufgabe ist die Umbenennung einer Datei über eine Batch-Datei.
Beispiel:
Vorher:
"DE.csv"
Nachher:
"DE_2014-10-06_13-57.csv"
Das Format ist zwingend einzuhalten.
Ich habe folgende Datei erstellt:
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
rename Pfad\Dateiname.csv Dateiname_%date:~-4%-%date:~-7,2%-%date:~-10,2%_%time:~0,2%-%time:~3,2%.csv
Jetzt muss ich feststellen, dass oben genannte Lösung leider "nicht" im
Zeitraum 0:01 bis 09:59 funktioniert, da die Stundenzahl anscheinend
nicht zweistellig dargestellt werden kann und ich erhalten in diesem
Zeitraum einen Syntaxfehler.
Kann mir jemand sagen, wie ich den Pfad oben umstricken muss,
damit die Umbenennung auch rund um die Uhr möglich ist?
Vielen Dank für Eure erneute Hilfe.
Gruss
Jörg
man hat mir hier bereits sehr geholfen, jedoch bin ich noch nicht
ganz am Ziel und ich hoffe man kann mir helfen.
Die Grundaufgabe ist die Umbenennung einer Datei über eine Batch-Datei.
Beispiel:
Vorher:
"DE.csv"
Nachher:
"DE_2014-10-06_13-57.csv"
Das Format ist zwingend einzuhalten.
Ich habe folgende Datei erstellt:
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
rename Pfad\Dateiname.csv Dateiname_%date:~-4%-%date:~-7,2%-%date:~-10,2%_%time:~0,2%-%time:~3,2%.csv
Jetzt muss ich feststellen, dass oben genannte Lösung leider "nicht" im
Zeitraum 0:01 bis 09:59 funktioniert, da die Stundenzahl anscheinend
nicht zweistellig dargestellt werden kann und ich erhalten in diesem
Zeitraum einen Syntaxfehler.
Kann mir jemand sagen, wie ich den Pfad oben umstricken muss,
damit die Umbenennung auch rund um die Uhr möglich ist?
Vielen Dank für Eure erneute Hilfe.
Gruss
Jörg
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 297318
Url: https://administrator.de/contentid/297318
Ausgedruckt am: 23.11.2024 um 02:11 Uhr
7 Kommentare
Neuester Kommentar
Eine zweistellige Stundenanzeige erhältst du beispielsweise so:
fk
set stunde=%time:~0,2%
:: Leerzeichen entfernen und 0 hinzufügen
set stunde=0%stunde: =%
:: immer zwei stellen von rechts nehmen
set stunde=%stunde:~-2%
echo %stunde%
Hallo
Wieso extrahierst du das Datum in Jahr / Monat / Tag, wenn du es dann doch nicht verwendest??
Gruss
set jahr=%date:~-4%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set HOUR=%time:~0,2%
set monat=%date:~-7,2%
set tag=%date:~-10,2%
set HOUR=%time:~0,2%
Wieso extrahierst du das Datum in Jahr / Monat / Tag, wenn du es dann doch nicht verwendest??
if "%HOUR:~0,1%"==" " set HOUR=0%HOUR:~1,6%
Einfach erklärt: wenn Die Variable HOUR nur 1 Stelle enthält, wird 1 Stelle (eine 0) davor eingefügtGruss
Hallo
Siehe Erklärung von set /?
Gruss
aber wohler kommt das 1,6 ?
Siehe Erklärung von set /?
%PATH:~10,5%
Dies erweitert die PATH-Umgebungsvariable und verwendet dann nur fünf
Zeichen ab dem elften Zeichen (Offset=10) des erweiterten Ergebnisses. Wenn die
Länge nicht angegeben ist, wird der Rest des Variablenwerts verwendet.
Wenn eine der Zahlen (Offset oder Länge) negativ ist, dann wird der angegebene
Wert der Länge des Umgebungsvariablenwerts hinzugefügt.
Gruss