1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
|
If FileExists("IndexPort.txt") Then FileDelete("IndexPort.txt")
If FileExists("Full.txt") Then FileDelete("Full.txt")
If FileExists("IndexPortTraite.txt") Then FileDelete("IndexPortTraite.txt")
If FileExists("test.txt") Then FileDelete("test.txt")
If FileExists("Resultat.txt") Then FileDelete("Resultat.txt")
; Saisie des données
;##############################################################################################################################
Do
$SaisieIp = InputBox ("Saisie IP", " ", "")
If @error Then Exit
$Ping = Ping($SaisieIp)
If $Ping = 0 Then
MsgBox(16, "Information ", "Ping KO ou mauvaise saisie")
EndIf
Until $Ping
$SaisieCommunaute = InputBox ("Saisie communauté public", " ", "")
If @error Then Exit
; Requetes Snmp
;##############################################################################################################################
SplashTextOn("", "Snmp IndexName", 215, 30, -1, 0, 5, "", 8)
RunWait ( @ComSpec & " /c snmpwalk " & $SaisieIp & " " & $SaisieCommunaute & " .1.3.6.1.2.1.2.2.1.2 > IndexPort.txt" , "", @SW_HIDE ) ; Port Name
SplashTextOn("", "Snmp IndexEtat", 215, 30, -1, 0, 5, "", 8)
RunWait ( @ComSpec & " /c snmpwalk " & $SaisieIp & " " & $SaisieCommunaute & " .1.3.6.1.2.1.2.2.1.8 >> Full.txt" , "", @SW_HIDE ) ; Etat port
SplashTextOn("", "Snmp IndexMac", 215, 30, -1, 0, 5, "", 8)
RunWait ( @ComSpec & " /c snmpwalk " & $SaisieIp & " " & $SaisieCommunaute & " .1.3.6.1.2.1.17.4.3.1.2 >> Full.txt" , "", @SW_HIDE ) ; Mac
; Traitement sur les fichiers
;##############################################################################################################################
SplashTextOn("", "Mise en forme", 215, 30, -1, 0, 5, "", 8)
; Formatage du fichier index / ports
;------------------------------------------------------------------------------------------------------------------------------
$OpenFileIndexPort = FileOpen ("IndexPort.txt", 0)
While 1
$ReadFileIndexPort = FileReadLine ($OpenFileIndexPort)
If @error = -1 Then ExitLoop
If StringLeft($ReadFileIndexPort, 23) = ".iso.3.6.1.2.1.2.2.1.2." Then
$CleanIndexPort1 = StringReplace($ReadFileIndexPort, ".iso.3.6.1.2.1.2.2.1.2.", "")
$CleanIndexPort2 = StringReplace($CleanIndexPort1, " ", "")
FileWriteLine("IndexPortTraite.txt", $CleanIndexPort2)
EndIf
WEnd
FileClose($OpenFileIndexPort)
; Formatage des autres fichiers
;------------------------------------------------------------------------------------------------------------------------------
$OpenFileFull = FileOpen ("Full.txt", 0)
While 1
$ReadFileFull = FileReadLine ($OpenFileFull)
If @error = -1 Then ExitLoop
If StringLeft ($ReadFileFull, 5) <> ".iso." Then
Else
Select
Case StringLeft($ReadFileFull, 26) = ".iso.3.6.1.2.1.17.4.3.1.2." ; Traitement Mac
$CleanMac1 = StringReplace($ReadFileFull, ".iso.3.6.1.2.1.17.4.3.1.2.", "")
$CleanMac2 = StringReplace($CleanMac1, " ", "")
$SplitCleanMac2 = StringSplit($CleanMac2, "=")
$SplitCleanMac3 = StringSplit($SplitCleanMac2[1], ".")
$CleanMac = Hex($SplitCleanMac3[1], 2) & ":" & Hex($SplitCleanMac3[2], 2) & ":" & Hex($SplitCleanMac3[3], 2) & ":" & Hex($SplitCleanMac3[4], 2) & ":" & Hex($SplitCleanMac3[5], 2) & ":" & Hex($SplitCleanMac3[6], 2)
$CleanMac4 = $SplitCleanMac2[2] & "=" & $CleanMac
FileWriteLine("test.txt", $CleanMac4)
Case StringLeft($ReadFileFull, 23) = ".iso.3.6.1.2.1.2.2.1.8." ; Traitement etat port
$CleanEtat1 = StringReplace($ReadFileFull, ".iso.3.6.1.2.1.2.2.1.8.", "")
$CleanEtat2 = StringReplace($CleanEtat1, " ", "")
$CleanEtat3 = StringSplit($CleanEtat2, "=")
Select
Case $CleanEtat3[2] = 1
$CleanEtat4 = StringReplace($CleanEtat3[2], "1", "Up")
Case $CleanEtat3[2] = 2
$CleanEtat4 = StringReplace($CleanEtat3[2], "2", "Down or notconnect")
EndSelect
FileWriteLine("test.txt", $CleanEtat3[1] & "=" & $CleanEtat4)
EndSelect
EndIf
WEnd
FileClose($ReadFileFull)
SplashOff()
; Fichier de sorti
;##############################################################################################################################
$OpenFilePort = FileOpen ("IndexPortTraite.txt", 0)
While 1
$ReadFilePort = FileReadLine ($OpenFilePort)
If @error = -1 Then ExitLoop
$SplitReadFilePort = StringSplit($ReadFilePort, "=")
$Index = $SplitReadFilePort[1]
FileWrite("Resultat.txt", $SplitReadFilePort[2] & "|")
$OpenFileTraite = FileOpen ("test.txt", 0)
While 1
$ReadFileTraite = FileReadLine ($OpenFileTraite)
If @error = -1 Then ExitLoop
$SplitReadFileTraite = StringSplit($ReadFileTraite, "=")
If $Index = $SplitReadFileTraite[1] Then
FileWrite("Resultat.txt", $SplitReadFileTraite[2] & "|")
EndIf
Wend
FileWriteLine("Resultat.txt", "")
FileClose($OpenFileTraite)
WEnd
FileClose($OpenFilePort) |
Partager