Se você quiser ser 100% independente dos formatos de saída, terá que analisar os arquivos / proc / net. A parte interessante é esse arquivo: /proc/net/if_inet6
.
Então você pode extrair o ip com:
awk '$6=="eth0"&&$4==00{print $1}' /proc/net/if_inet6
Se o quarto valor for 00
, o escopo será global E se o sexto campo for eth0
(ou como o nome da sua interface é), imprima o primeiro campo (o endereço IP em hexadecimal).