入力データ log_kensu.txt
*****************************
--------------------------------1ICE805I 0 JOBNAME: AULOO , STEPNAME: DUMMYC01
--------------------------------
--------------------------------
ICE045I 0 RECORDS - IN: 12346, OUT: 56789
--------------------------------
--------------------------------
1ICE805I 0 JOBNAME: AULOO , STEPNAME: DUMMYC02
--------------------------------
--------------------------------
ICE045I 0 RECORDS - IN: 6, OUT: 9
setlocal enabledelayedexpansion
@echo off
cls
echo %1
echo %~0
echo ---------------------------------------------
echo ログファイルから件数箇所を出力します
echo ---------------------------------------------
echo;
SET /P ANSWER="実行します。よろしいですか (Y/N)?"
if /i {%ANSWER%}=={y} (goto :yes)
if /i {%ANSWER%}=={yes} (goto :yes)
EXIT
:yes
IF EXIST %1_結果 DEL %1_結果
cscript /nologo bin\log_kensu.vbs %1
endlocal
log_kensu.vbs
Option Explicit
Dim Args
Dim Cmd
Dim sName
Dim sArg1
Dim lPosStr
Dim iSW
Dim sLine
Dim sEditLine
Dim aryStrings
'--
Dim sJobName
Dim sJobNameT,sJobNameV
Dim sStepName
Dim sStepNameT,sStepNameV
'--
Dim sINName
Dim sINNameT,sINNameV
Dim sOUTName
Dim sOUTNameT,sOUTNameV
Dim fso
Dim iFile
Dim oFile
'----------------------------------------
Set Args = WScript.Arguments
If Args.Count < 1 Then
WScript.Echo "ドラッグ&ドロップしてを実行。"
WScript.Quit
End If
WScript.Echo Args.Count
sArg1 = Wscript.Arguments(0)
WScript.Echo sArg1
Dim OUTFNAME
OUTFNAME = sArg1 & "_結果" & ".csv"
'----------------------------------------
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
Set iFile = fso.OpenTextFile(sArg1, 1, False, 0)
Set oFile = fso.OpenTextFile(OUTFNAME, 2, True)
iSW = 0
Do Until iFile.AtEndOfStream
sLine = iFile.ReadLine
' ---------------------------------------
lPosStr = InStr(1, sLine, "1ICE805I 0 JOBNAME:")
If lPosStr > 0 Then
sEditLine = trim(Mid(sLine, len("1ICE805I 0 ") ))
aryStrings = Split(sEditLine, ",")
sJobName = trim(aryStrings(0))
sStepName = trim(aryStrings(1))
aryStrings = Split(sJobName, ":")
sJobNameT = trim(aryStrings(0))
sJobNameV = trim(aryStrings(1))
aryStrings = Split(sStepName, ":")
sStepNameT = trim(aryStrings(0))
sStepNameV = trim(aryStrings(1))
iSW = 0
End If
' ---------------------------------------
lPosStr = InStr(1, sLine, "RECORDS - IN:")
If lPosStr > 0 Then
sEditLine = trim(Mid(sLine, len(" ICE045I 0 RECORDS - ") ))
aryStrings = Split(sEditLine, ",")
aryStrings = Split(sEditLine, ",")
sINName = trim(aryStrings(0))
sOUTName = trim(aryStrings(1))
aryStrings = Split(sINName, ":")
sINNameT = trim(aryStrings(0))
sINNameV = trim(aryStrings(1))
aryStrings = Split(sOUTName, ":")
sOUTNameT = trim(aryStrings(0))
sOUTNameV = trim(aryStrings(1))
oFile.WriteLine sJobNameT & "," & sJobNameV & "," & _
sStepNameT & "," & sStepNameV & "," & _
sINNameT & "," & sINNameV & "," & _
sOUTNameT & "," & sOUTNameV
iSW = 1
End If
Loop
'
iFile.Close
oFile.Close
JOBNAME,AULOO,STEPNAME,DUMMYC01,IN,12346,OUT,56789
JOBNAME,AULOO,STEPNAME,DUMMYC02,IN,6,OUT,9