

Datum a čas v názvu souboru
Hezký den,
prosím o kontrolu dávkového souboru. Generuje mi to chybné názvy souborů před časem 10:00. Podle času systémových hodin od 10:00:00 hod. je to již v pořádku takto:
2021-09-04 - 10.21.07.txt
Co je toho příčinou? Kde dělám chybu? Prosím o vysvětlení a rady jak to vyřešit. Děkuji.
SETLOCAL
set LOGFILE_DATE=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%
set LOGFILE_TIME=%TIME:~0,2%.%TIME:~3,2%.%TIME:~6,2%
set LOGFILE=%LOGFILE_DATE%" - "%LOGFILE_TIME%"".txt
command > %LOGFILE%
pause
toto používám kdesi v batce:
sekundami ani mezinárodním pomlčkovým zápisem data jsem se nezabýval, to si doděláš sám.
mimochodem místo zápisu času "_08.53" se mi pro přehlednost osvědčilo "_08h53"
je to pak hned jasné i lidem, co to vidí poprvé. a parsovat to jde stejně.
Naprosto se v tom ztrácím. Kódu nerozumím. Možná by mohla pomoci část kódu kde je patrná mezera.
if "%hh:~0,1%"==" " (set hh=0%hh:~1,1%)
Bohužel nevím jak to zapracovat do kódu v zadání dotazu. Snad někdo pomůže. Děkuji všem.
1) v případě podobných logů název souboru s mezerarami nedoporučuju, raději kombinovat pomlčky a dolní podtržítka. mj. nesmíš zapomenout pokaždé název souboru (proměnné) uzavřít do uvozovek.
tu chybu tam máš taky: command > %LOGFILE%
2) natvrdo předpokládáš české prostředí v konzoli, což není nejskvělejší nápad. na pc s angličtinou to vyrobí nesmysl.
taky napevno předpokládáš jen letošní rok. proč, plánuješ umřít?
3) starší systémy běžně vypisovaly proměnnou %date% i se zkratkou dne. w10 v tom mají podle jazyka trochu chaos. proto ten skript začíná tak, že si odřízne posledních 10 znaků jen s číselnou částí, viz příklady v původních zaremovaných komentářích.
4) pokud používáš nastavení hodnoty proměnné bez závorek kolem set=..., dávej si bacha, ať řádek nekončí volnou mezerou, bude v proměnné taky.
dodělal jsem tam i vteřiny, pro orientaci hodin je ponechán oddělovač "h", tečkou ho zvládneš nahradit.
Ten kód je tak trochu vražedný, ale pomohl. Děkuji.
Pokud by to někdo další řešil jinak, tak sem prosím napsat výsledný kód s komentářem. Určitě se sem časem vrátím... Díky.