Это будет работать в предположении, что он вызывается при загрузке машины.
wevtutil
используется для поиска в System
журнале событий последних двух событий запуска (EventID=12
), и из них извлекается дата. Если обе даты совпадают, то это не первый запуск сегодня.
@echo off
setlocal enableextensions disabledelayedexpansion
set "boot1="
set "boot2="
for /f "tokens=2 delims=T: " %%a in ('
wevtutil qe system /count:2 /rd:true /q:"Event[System[(EventID=12)]]" /format:text
^| find "Date:"
') do if not defined boot1 ( set "boot1=%%a" ) else ( set "boot2=%%a" )
if "%boot1%"=="%boot2%" (
echo This is NOT the first boot on the current day
) else (
echo This IS the first boot on the current day
)