2009-11-10 3 views
1

안녕하십니까,로깅 용 변수가 추가 된 FOR 루프에서 작업 결과 출력

FOR 루프에서 실행중인 작업의 결과를 추가 데이터와 함께 출력하려고합니다. 이 경우 FOR 루프를 사용하여 예약 된 작업을 설정하기 위해 텍스트 파일에서 서버 이름을 읽습니다. 각 루프에서 결과를 캡처하여 로그 파일에 출력하고 싶지만 서버 이름과 타임 스탬프와 같은 추가 정보를 삽입해야합니다. 여기에 몇 가지 코드 조각입니다 : ghostdog74 제안

REM - SETUP ENVIRONMENT ------------------------------------------------------------------------------ 

set source="%~dp0targets.txt" 

for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (set datefile=%%k%%i%%j-SNMP_Deploy.log) 

for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c%%a%%b) 

for /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b) 

REM - PROGRAM VARIABLES ------------------------------------------------------------------------------ 

set package="%~dp0SNMP_Setup.cmd" 

set task=schtasks /create /sc once /tn SNMP_Install /tr %package% /s %%a /u %user% /p %pw% /st %start_time% /sd %start_date% 

set log="%~dp0Logs\%datefile%" 

REM - SETUP SCHEDULE ON REMOTE SERVERS --------------------------------------------------------------- 

for /f "delims=" %%a in ('type %source%') do %task% 1>>%templog1% 2>&1 
+0

같은, 당신은 귀하의 질문에 구체적하시기 바랍니다 수 있을까? –

+0

그래서 echo % varname % >> % log %를 사용하여 삽입하십시오. 너가 원하는게 그거야? – ghostdog74

답변

0

으로, 각 루프 내 코멘트를 반향 수는

@ECHO OFF 
REM - SETUP ENVIRONMENT ------------------------------------------------------------------------------ 

SET log="%~dp0log.txt" 

set source="%~dp0targets.txt" 

for /F "tokens=2-4 delims=/ " %%i in ('date /t') do (set datefile=%%k%%i%%j-SNMP_Deploy.log & echo step 1 >> %log%) 

for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c%%a%%b & echo step 2 >> %log%) 

for /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b & echo step 3 >> %log%) 

REM - PROGRAM VARIABLES ------------------------------------------------------------------------------