スクリプト エキスパートの皆様、こんにちは。
リモートサーバーにログファイルがあります..リモートサーバーにc:\vb\text.log
リモートシステムを次のlist.Txt
ように含めました
server1
server2
以下はログのサンプルです。
application working
[10/23/2012 working
[10/24/2012 nos appdown
error found you need to check this
以下は私のスクリプトです。
Set Fso = CreateObject("Scripting.FileSystemObject")
Set InFile = fso.OpenTextFile("list.Txt")
Set out = fso.CreateTextFile("error.log")
Const ForReading = 1
Do While Not (InFile.atEndOfStream)
strComputer = InFile.ReadLine
today = Date()
Set fso = CreateObject("Scripting.FileSystemObject")
strFilePath = "\\" & strComputer & "\c$\vb\"
Set InputFile = fso.OpenTextFile(strFilePath & "text.log", 1)
Do While Not (InputFile.AtEndOfStream)
strLine = InputFile.ReadLine
If Left(line, Len(today)+1) = "[" & today Then
' line timestamped with today's date
If InStr(line, "nos") > 0 Then
' line contains "error"
out.WriteLine InStr & vbTab & strComputer
End If
End If
Loop
InputFile.close
Loop
out.Close
InFile.Close
基本的に、上記のスクリプトはtext.log
、[10/24/2012 nos appdown
. 次に、現在の日付行に「Nos」として見つかった場合..次に、error.log
コンピューター名でに書き込む必要があります。
私の場合、出力は来ていませんが、文字列「Nos」を検索しているようです。
この状況から私を解放してください....