PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ifconfig -a Ausgabe in Blöcke zerlegen



biggel
01-12-2003, 14:53
Irgendwie komme ich nicht weiter...

Ich habe hier die Ausgabe eines "ifconfig -a" Befehls:

----------------
eth0 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:1.1.1.1
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1400943007 errors:2 dropped:493 overruns:0 frame:0
TX packets:497515624 errors:2 dropped:0 overruns:2 carrier:0
collisions:0 txqueuelen:100
RX bytes:1019813213 (972.5 MiB) TX bytes:470845875 (449.0 MiB)
Interrupt:15 Base address:0xd800

eth0:1 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:15 Base address:0xd800

eth1 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:771376740 errors:1 dropped:0 overruns:0 frame:0
TX packets:320532790 errors:2 dropped:0 overruns:2 carrier:0
collisions:0 txqueuelen:100
RX bytes:2316550576 (2.1 GiB) TX bytes:2607663877 (2.4 GiB)
Interrupt:15 Base address:0xd400

eth1:1 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:15 Base address:0xd400

eth2 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:255.255.255.240
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:334103 errors:0 dropped:0 overruns:0 frame:0
TX packets:177460 errors:2 dropped:0 overruns:2 carrier:0
collisions:1289 txqueuelen:100
RX bytes:339038978 (323.3 MiB) TX bytes:29212303 (27.8 MiB)
Interrupt:5 Base address:0xc800

eth3 Link encap:Ethernet HWaddr xxxxxx
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:5 Base address:0xc400
-------------------

Ich möchte es irgendwie hinbekommen, die einzelnen Blöcke diese Ausgabe in je eine Variable zu überführen, d.h. in einer Variable sollen z.B. alle Angaben betreffend eth0 stehen, in der nächsten alles zu eth0:1, usw.
Ich habe mit awk herumexperimentiert, es aber nicht hinbekommen. Allerdings denke ich , daß es damit eigentlich funktionieren müßte...
Hat jemand eine Idee?

fork
01-12-2003, 17:02
for X in $(ifconfig -a | cut -f1 -d" ");do echo "Verarbeite $X";done
Vielleicht so?

biggel
02-12-2003, 07:54
Danke, das ist es aber leider nicht so ganz...
Ich meine eine Aufspaltung in Variablen wie folgt:



$1: eth0 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:1.1.1.1
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1400943007 errors:2 dropped:493 overruns:0 frame:0
TX packets:497515624 errors:2 dropped:0 overruns:2 carrier:0
collisions:0 txqueuelen:100
RX bytes:1019813213 (972.5 MiB) TX bytes:470845875 (449.0 MiB)
Interrupt:15 Base address:0xd800

$2: eth0:1 Link encap:Ethernet HWaddr xxxxxx
inet addr:1.1.1.1 Bcast:1.1.1.1 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:15 Base address:0xd800


usw...

fork
02-12-2003, 16:43
Das habe ich schon verstanden, mit etwas Phantasie kannst Du mein Scriptschnipsel zu dem hier machen:


for X in $(ifconfig -a | cut -f1 -d" ");do echo "Verarbeite $(ifconfig $X)";done

biggel
03-12-2003, 07:59
Ok, du hast recht, das notwendige Phantasie Fitzelchen war wohl nicht ganz bei mir vorhanden ;)
Vielen Dank, das ist ein Ansatz mit dem ich weiterarbeiten kann...:) :) :)