@echo off :: /======================================================================= :: /= :: /= psuptimelist.cmd :: /= :: /= AUTHOR: Jake Bentz :: /= DATE: 10/07/2007 :: /= :: /= REVISION HISTORY :: /= VER DATE AUTHOR/EDITOR COMMENT :: /= 1.0 10/07/2007 Jake Bentz Created script :: /= 1.1 07/31/2013 Jake Bentz Rewritten for psinfo :: /======================================================================= setlocal set SYNTAX=Syntax: psuptimelist.cmd [ServerList] :: -- Check for arguments :: -- If your script has a simple syntax this is an easy way to present :: -- help text. if (%1) EQU (/?) echo %SYNTAX% & goto END if /i (%1) EQU (/h) echo %SYNTAX% & goto END if (%1) EQU (?) echo %SYNTAX% & goto END if (%1) EQU (-?) echo %SYNTAX% & goto END if /i (%1) EQU (-h) echo %SYNTAX% & goto END :SetServerlist if (%1) EQU () echo ERROR: Missing Server List! & echo %SYNTAX% & goto END set ServerList=%1 call :SetLogfile goto :MAIN :MAIN echo Logging to file: %LogFile% echo ==============================================================================>%LogFile% echo Server Uptime List %date% %time%>>%LogFile% echo ==============================================================================>>%LogFile% echo.>>%LogFile% echo ==================================================>>%LogFile% echo Getting Uptime for each server . . . for /f %%a in (%serverlist%) do ( echo ============================================== >> %logfile% echo %%a >> %logfile% psinfo \\%%a | find "Uptime:" >> %logfile% echo ============================================== >> %logfile% ) echo Complete! goto END :SetLogfile for /F "tokens=1-4 delims=/- " %%A in ('date/T') do set DATE=%%B-%%C-%%D for /F "tokens=1-4 delims=:., " %%a in ('time/T') do set TIME=%%a%%b%%c set logfile=psuptime_output_%date%_%time%.txt :END endlocal