Transformando rapidamente variáveis em arrays
Dica publicada em Linux / Comandos
Transformando rapidamente variáveis em arrays
Exemplo: extraindo IP de uma interface de rede.
ifconfig eth0
var00=$(ifconfig eth0); set $var00; echo "${6}"; echo "${18}"
192.168.0.100
1c:bf:ce:6e:75:de
Onde ${6} imprime o sexto elemento da array (endereço IP) e ${18} o décimo oitavo (endereço MAC).
ifconfig eth0
wlx1cbfce6e75de: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.100 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::cf23:5845:2b78:1e85 prefixlen 64 scopeid 0x20
ether 1c:bf:ce:6e:75:de txqueuelen 1000 (Ethernet)
RX packets 418333 bytes 94015853 (89.6 MiB)
RX errors 0 dropped 4916 overruns 0 frame 0
TX packets 4071471 bytes 431692317 (411.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
var00=$(ifconfig eth0); set $var00; echo "${6}"; echo "${18}"
192.168.0.100
1c:bf:ce:6e:75:de
Onde ${6} imprime o sexto elemento da array (endereço IP) e ${18} o décimo oitavo (endereço MAC).
var=($(ifconfig eth0))
não precisa usar o set