xpeeen
Goto Top

Bash: zwei Dateien zusammenführen

Hallo zusammen.

ich habe unter Linux zwei Dateien erzeugt.

Ich frage per SNMP einen Switch ab und möchte zu jedem Port die MAC-Adresse haben.

Ich habe nun zwei Dateien mit folgenden Inhalten:

Tabelle MAC:
0.0.94.0.1.1 = Hex-STRING: XX XX XX XX XX XX
0.0.94.0.1.23 = Hex-STRING: ZZ ZZ ZZ ZZ ZZ ZZ
0.0.94.0.1.25 = Hex-STRING: YY YY YY YY YY YY
0.0.133.131.30.202 = Hex-STRING: AA AA AA AA AA AA


Tabelle Port:
0.0.94.0.1.1 = INTEGER: 50
0.0.94.0.1.23 = INTEGER: 50
0.0.94.0.1.25 = INTEGER: 50
0.0.133.131.30.202 = INTEGER: 50

Jetzt würde ich gerne wissen, wie die MAC dem Port zuordnen kann.

Content-Key: 260613

Url: https://administrator.de/contentid/260613

Printed on: April 18, 2024 at 19:04 o'clock

Mitglied: 114757
114757 Jan 21, 2015, updated at Jan 22, 2015 at 10:49:09 (UTC)
Goto Top
Ich frage per SNMP einen Switch ab und möchte zu jedem Port die MAC-Adresse haben.
#!/bin/bash
FILEMAC=./mac.txt
FILEPORT=./port.txt

# für jede Zeile in der PORT Datei
while read line ;do
    # extrahiere den Interfaceteil der Zeile durch ein cut anhand des Leerzeichens
    interface=$(echo $line | cut -d " " -f1)  
    # Suche in der MAC Datei nach dem Interface und trenne die gefundene Zeile anhand des Doppelpunktes
    mac=$(grep "^$interface" $FILEMAC | cut -d ":" -f2)  
    # gebe die Variablen auf der Konsole aus
    echo "$line MAC:$mac"  
done <$FILEPORT
Gruß jodel32
Member: xpeeen
xpeeen Jan 21, 2015 at 14:29:48 (UTC)
Goto Top
Super hat funktioniert...

aber kann mir jemand die Funktionsweise des unteren Teils erklären?
Mitglied: 114757
114757 Jan 21, 2015 updated at 14:48:25 (UTC)
Goto Top
Zitat von @xpeeen:
aber kann mir jemand die Funktionsweise des unteren Teils erklären?
Kommentare oben eingefügt ...
Member: colinardo
colinardo Jan 23, 2015 at 11:28:23 (UTC)
Goto Top
Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.