Wat heb ik?
1. Een bat file.
2. Een vbs file.
3. Een regular expression.
Wat mis ik dan nog?
Een goed resultaat als de URL of pc waar je een tracert naar toe wilt uitvoeren eindigt met een cijfer.
Als dit het geval is krijg ik nl:
Ik wil dus alleen:
Wie kan mijn regular expression de goede kant op gooien?
Of wie heeft dit vaker aangepakt? Op Google is het een ramp om een andere regexp te vinden.
Ben zelf aardig regexp n00b!
1. Een bat file.
code:
1
| cscript ..\scripts\tracert.vbs %1 |
2. Een vbs file.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| set args = Wscript.arguments
strUrl = args(0)
set objShell = CreateObject("WScript.Shell")
strOut=""
cmdarg="%comspec% /c tracert.exe -d " & strUrl
set objExCmd = objShell.Exec(cmdarg)
Do Until objExCmd.stdOut.AtEndOfStream
strLine = objExCmd.stdOut.ReadLine()
Set regEx = New RegExp
regEx.Pattern = "[\f\n\r\v]+"
regEx.Global = True
regEx.Multiline = True
strLine = regEx.Replace(strLine, "<end>")
strComplete = Instr(strLine, "Trace complete.<end>")
If strComplete = 0 THEN
WScript.echo strLine
End If
Loop |
3. Een regular expression.
code:
1
| /[^.]([1-9]\s.*)/s |
Wat mis ik dan nog?
Een goed resultaat als de URL of pc waar je een tracert naar toe wilt uitvoeren eindigt met een cijfer.
Als dit het geval is krijg ik nl:
code:
Hier heb ik een tracert naar pc5 gedaan waardoor hij de 5 van pc5 pakt omdat de regular expression als eerste een cijfer zoekt.1
2
3
| 5 Microsoft (R) Windows Script Host Version 5.6 Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. <end> Tracing route to pc5 [10.0.0.156]<end> over a maximum of 30 hops: |
Ik wil dus alleen:
code:
1
2
3
4
5
6
7
| 1 <1 ms <1 ms <1 ms 10.0.0.140 <end> 2 1 ms <1 ms <1 ms 81.18.168.41 <end> 3 8 ms 8 ms 7 ms 81.18.169.1 <end> 4 8 ms 8 ms 7 ms 81.18.163.25 <end> 5 9 ms 8 ms 8 ms 62.212.80.37 <end> 6 9 ms 9 ms 8 ms 62.212.80.65 <end> ... |
Wie kan mijn regular expression de goede kant op gooien?
Of wie heeft dit vaker aangepakt? Op Google is het een ramp om een andere regexp te vinden.
Ben zelf aardig regexp n00b!