Portál AbcLinuxu, 7. prosince 2025 09:20
[petr@soban ~]$ /sbin/ip addr show eth0 | grep inet | awk '{print $2}'
10.0.0.1/24
fe80::20a:e6ff:fe16:5a95/64
[petr@soban ~]$
[ivok@zero ~]$ /sbin/ip addr show eth0 | awk '/inet/ {print $2}'
10.80.144.11/24
Problém je samozřejmě v tom, že eth0 může mít klidně těch adres víc...
A ještě jde taky parsovat ifconfig, ale s tím jsou docela problémy (je to někde v archivu diskusí...).
ip -4 addr show eth1
/sbin/ifconfig eth0 | grep inet | awk '{print substr($2,6)}'
Pro eth1 jenom změníš parametr pro ifconfig.
/sbin/ip addr show dev eth1 | egrep '^ *inet ' | sed -e 's/^ *inet *\(\([0-9]\+\.\)\{3\}[0-9]\+\).*$/\1/'
Příště zkuste nejdřív hledat, tento dotaz je tu každou chvíli…
/sbin/ifconfig eth0 | grep inet | awk '{print $2}' | sed 's/^addr://g'
/sbin/ip addr show dev eth0 | sed 's/^ *inet \([0-9.]*\).*/\1/;t;d'awk:
/sbin/ip addr show dev eth0 | awk '/^ *inet /{gsub(/[^0-9.].*/,"",$2);print$2}'
grep:
/sbin/ip addr show dev eth0 | grep -Po '(?<=\binet )[0-9.]+'
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.