Greg Wooledge:Parsing the interface names out of THAT is significantly harder.wooledg:~$ ip link 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether a0:8c:fd:c3:89:e0 brd ff:ff:ff:ff:ff:ff In support of my earlier point that some other people did make modern ifconfig usable in such ways:JdeBP % ifconfig -l bge0 bge1 lo0 tun0 JdeBP % Here's something from a script of mine: list_available_network_interfaces() { case "`uname`" in Linux) /bin/ls /sys/class/net ;; *) ifconfig -l ;; esac } (Note that this is as loose as it is because I'm only targetting
Linux-based operating systems and the BSDs so far here. Also note
that this breaks on OpenBSD which does not have the |