间时紧张,先记一笔,后续优化与完善。
@rem net statistics workstation | find /i "statistics since" @echo off @CALL :set_date_var @rem CALL :print_year_month_day @CALL :format_month_day @rem CALL :print_year_month_day @CALL :set_date @CALL :find_start_string_from_event @GOTO :eof :find_start_string_from_event @set _find_start_string="cscript C:\WINDOWS\system32\eventquery.vbs /fi "id eq 6009" /l system | find "%_date%"" @for /f "tokens=3,4 delims= " %%a in ('%_find_start_string%') do @echo %%a %%b @GOTO :eof :set_date_var @echo off @for /f "tokens=1,2,3 delims=- " %%a in ('date /t') do ( set _year=%%a set _month=%%b set _day=%%c ) @echo on @GOTO :eof :set_date @echo off @set _date=%_year%-%_month%-%_day% @echo on @GOTO :eof :print_year_month_day @echo off @echo %_year% %_month% %_day% @echo on @GOTO :eof :format_month_day @echo off set _first= %_month:~0,1% if %_first% == 0 ( set _month=%_month:~1,1% ) @rem process _day set _first= %_day:~0,1% if %_day% == 0 ( set _month=%_day:~1,1% ) @echo on @GOTO :eof
以上脚本用到了batch中的函数调用,将命令的结果保存到变量中,变量的应用等技能。
因为date /t输出的间时式格和eventquery.vbs的输出不一样,所以转换了一下。
文章结束给大家分享下程序员的一些笑话语录:
姿势要丰富,经常上百度!