pbelcl
Goto Top

Datei mit Datum im Namen erstellen

Ich habe mir ein kleines Batch geschrieben, das mir eine Date erstellt, die im Namen das Datum und die Zeit hat.

@ECHO OFF
SET "_datetime=%date:~6,4%-%date:~3,2%-%date:~0,2%__%time:~0,2%h%time:~3,2%.lua"  
ECHO ; >>%_datetime%

Gestern Abend hat dieses Ding perfekt funktioniert!
Heute Früh ist offensichtlich die Stunde nur mehr einstellig und das Batch erzeugt aufgrund des Leerzeichens an der ersten Stelle der Stunde ZWEI unbrauchbare Dateien ;-(

Habt ihr einen Tipp wie ich da bei Uhrzeiten von 0-9 Uhr eine "0" davor bekomme?

Content-Key: 358172

Url: https://administrator.de/contentid/358172

Printed on: April 25, 2024 at 11:04 o'clock

Member: Franz-Josef-II
Franz-Josef-II Dec 14, 2017 at 07:43:13 (UTC)
Goto Top
Guten Morgäähhhnnn

Wenn ich als "Nichtscripter" bzw "Script-Anfänger" das richtig interpretieren, wird hier eine ".lua-Datei" erzeugt? Ist das "nur" ein Codeschnipsel? D.h. könnte es auch z.B. in der Powershell geschrieben oder muß es die (alte) bat sein?
Member: Lochkartenstanzer
Solution Lochkartenstanzer Dec 14, 2017, updated at Dec 15, 2017 at 07:37:25 (UTC)
Goto Top
Siehe

https://de.m.wikibooks.org/wiki/Batch-Programmierung:_Programmierungshil ...

unter dem Thema Datum und Zeit.

Oder Du stellst ein Zeitformat ein, daß Nullen stattt Leerzeichen benutzt.

lks
Mitglied: 134998
134998 Dec 14, 2017 updated at 10:53:17 (UTC)
Goto Top
If I have to use batch (almost does not happen anymore, we are living in 2017 and Billy the Gates is history face-wink) I use this approach because it is locale independent, using %date% is not by the way!:
@echo off & setlocal ENABLEDELAYEDEXPANSION
for /f %%a in ('wmic path win32_Localtime get Year^,Month^,Day^,Hour^,Minute^,Second /value ^| findstr .') do set /a %%a  
for %%a in (month day hour minute second) do set "tmp=0!%%a!" &set "%%a=!tmp:~-2!"  
set "timestamp=%Year%%Month%%day%_%Hour%%Minute%%Second%"  
echo %timestamp%

Welcome to the future and use "Power of the shell" my friend
get-date -F yyyyMMddHHmmss
Best regards
Tom
Member: pbelcl
pbelcl Dec 14, 2017 at 15:26:09 (UTC)
Goto Top
Danke für den Tipp, habe mein Batch jetzt nach der Beschreibung in deinem Link etwas abgewandelt.
@ECHO OFF
set ftime=%time:~0,2%%time:~3,2%%time:~6,2%
if "%ftime:~0,1%"==" " set ftime=0%ftime:~1,6%  
SET "fdate=%date:~6,4%-%date:~3,2%-%date:~0,2%"  

ECHO ; >>%fdate%__%Ftime%.lua
START "" "%Commander_Path%\Tools\Notepad++\notepad++.exe" %fdate%__%Ftime%.lua  

Jetzt gerade klappt es, mal sehen ob es morgen früh auch noch funktioniert face-wink
Member: Lochkartenstanzer
Solution Lochkartenstanzer Dec 14, 2017 at 15:33:41 (UTC)
Goto Top
Zitat von @pbelcl:

Danke für den Tipp,

Gern geschehen.

Jetzt gerade klappt es, mal sehen ob es morgen früh auch noch funktioniert face-wink

Wenn's das war dann noch ein How can I mark a post as solved?

lks
Member: pbelcl
pbelcl Dec 15, 2017 at 06:32:12 (UTC)
Goto Top
Funktioniert heute früh mit einstelliger Uhrzeit immer noch, danke für eure Hilfe!