Commit | Line | Data |
---|---|---|
f37162a4 SK |
1 | #! /bin/sh |
2 | ||
3 | set -e | |
4 | ||
5 | ip -s addr \ | |
6 | | awk ' | |
7 | /^[0-9]+:/ { | |
8 | sub(":$", "", $1) | |
9 | sub(":$", "", $2) | |
10 | sequence = $1 | |
11 | interface = $2 | |
12 | interfaces[sequence] = interface | |
13 | } | |
14 | ||
15 | /^ +inet [0-9]/ { | |
16 | sub("/[0-9]+", "", $2) | |
17 | addr = $2 | |
18 | addrs[interface] = addr | |
19 | } | |
20 | ||
21 | /^ +RX: / {transfer_direction = "r"} | |
22 | /^ +TX: / {transfer_direction = "w"} | |
23 | ||
24 | /^ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ +[0-9]+ *$/ { | |
25 | io[interface, transfer_direction] = $1; | |
26 | } | |
27 | ||
28 | END { | |
29 | for (seq=1; seq<=sequence; seq++) { | |
30 | interface = interfaces[seq] | |
31 | label = substr(interface, 1, 1) | |
32 | if (addrs[interface]) { | |
33 | curr_read = io[interface, "r"] | |
34 | curr_write = io[interface, "w"] | |
35 | print(interface, addrs[interface], curr_write, curr_read) | |
36 | } else { | |
37 | print(interface) | |
38 | } | |
39 | } | |
40 | }' |