Möchte ganz gerne die ip an einem Port auslesen die letzte ip krieg ich schon hin aber da die ip immer unterschiedlich gross ist
kommen da probleme da ip nicht nur 1 stelle hat sondern bis zu 3 stellen haben kann.
das ist mein script geht leider nur die letzte ip auszulesen aber nicht jede einzelne.
währe schön wenn mir wer helfen kann wie ich alle 4 ip zahlen in eine Vriable kriege.
z.b.
$ip1 $ip2 $ip3 $ip4 $port
193 168 2 10 1473
C
#include <Constants.au3>
#include <file.au3>
Global $ip = 0, $ip1 = 0, $ip2 = 0 , $ip3 = 0
$suche = 1743
$result = ip_port($suche)
Func ip_port($port)
Local $new_port = ":" & $port ; port string
Local $result = Run(@ComSpec & " /c netstat -anop TCP", "", @SW_HIDE ,$STDERR_CHILD + $STDOUT_CHILD)
Local $line = StdoutRead($result) ; ausgabe aus netstat einlesen
Local $result_array = StringSplit($line, @LF) ; Split string at line boundaries
;search for line containing the sub-String
for $i =1 to $result_array[0] ;check each line in array
if StringInStr($result_array[$i], $new_port) then ; is there a line with $port set
; _FileWriteLog("iptest.txt", @CRLF & $result_array[$i])
;hier löscht er die ersten 40 zeichen
Local $var2 = StringTrimLeft($result_array[$i], 42)
;hier löscht er die letzten 24 zeichen
Local $var = StringTrimRight($var2 , 23)
MsgBox(0,"test", $var)
Local $aErgebnis = StringRegExp($var, '(?<=.)(.*)(?::)',1)
Local $ip = StringTrimLeft($aErgebnis[0], 1)
_FileWriteLog("iptest.txt", $ip)
ExitLoop
EndIf
Next
EndFunc
Alles anzeigen