1

У меня есть batch файл в моем автозапуске, который должен вести себя немного иначе при первой загрузке.

Как я могу узнать, является ли это первая загрузка в текущий день через Windows cmd? Может быть, есть какой-то способ чтения журнала событий Windows текущего дня и подсчета событий загрузки?

1 ответ1

0

Это будет работать в предположении, что он вызывается при загрузке машины.

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
    )

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .