Aktive Netzwerkschnittstelle abfragen
Author: Dimitrios Anogiatis
(Stand der EN Seite vom 17.03.2024)
Diese Funktion liefert Ihnen die aktive Netzwerkschnittstelle (z.B.
eth0
oder
wlan0
usw.).
Sie kann in Shell-Funktionen oder jeder internen Funktion verwendet werden, die auf diese Informationen angewiesen ist.
PUBLIC FUNCTION getActiveNetworkInterface() AS String
DIM tmpNIF AS String[]
DIM tmpActive, tmpString AS String
DIM iterator AS Integer
DIM tmpFile AS File
'get the interface directories
tmpNIF = Dir("/sys/class/net")
'check each folder's oper file to see if the interface is up and running
FOR iterator = 0 TO tmpNIF.Count - 1
tmpString = "/sys/class/net" &/ tmpNIF [iterator]&/ "operstate"
'check the operational state of each interface
tmpFile = OPEN tmpString FOR INPUT
WHILE NOT Eof(tmpFile)
LINE INPUT #tmpFile, tmpActive
WEND
CLOSE #tmpFile
'if it's reported as up then return it's name
IF tmpActive = "up" THEN RETURN tmpNIF[iterator]
NEXT
END