If you don't need to know the logon time of user, even if they are logged off, but only need the logon date and time of the current logged on user, use LogonTime.bat.
The syntax for using LogonTime.bat is:
\[call\] LogonTime LT
Where LT is a call directed environment variable that will contain the date and time of the current user's logon, like MM/DD/YYYY HH:MM:SS.
NOTE: LogonTime.bat uses LogonSessions.exe, which should be located in a folder that is in your PATH, or in the same folder as LogonTime.bat.
LogonTime.bat contains:
@echo off if \{%1\}==\{\} @echo Syntax: LogonTime LT&goto :EOF setlocal set sess=N call :quiet>nul 2>&1 if defined lt endlocal&set %1=%lt%&goto :EOF endlocal&set %1=0 goto :EOF :quiet for /f "Tokens=*" %%a in ('logonsessions') do ( set line=%%a call :parse ) goto :EOF :parse set wrk=%line:Logon session=% if "%wrk%" NEQ "%line%" set sess=Y&goto :EOF set wrk=%line:User name: =% if "%wrk%" NEQ "%line%" set user=%wrk%&goto :EOF set wrk=%line:Logon type: =% if "%wrk%" NEQ "%line%" goto isInt set wrk=%line:Logon time: =% if "%wrk%" NEQ "%line%" goto lt goto :EOF :isInt if "%wrk%" EQU "Interactive" goto :EOF set sess=N goto :EOF :lt if "%sess%" EQU "N" goto :EOF set lt=%wrk%
0 comments
Hide comments