Portál AbcLinuxu, 14. května 2025 02:54
addr=`/sbin/ip addr show dev eth0 | egrep '^ *inet ' | awk '{ print $2; }'` addr=${addr%/*}
(pokud je jen jedna a jde o rozhraní eth0
)
Když tak na to koukám, bez toho egrep
u by se šlo snadno obejít:
/sbin/ip addr show dev eth0 | awk '{ if ($1=="inet") print $2; }'
a i to odstranění všeho počínaje lomítkem by samozřejmě awk
zvládl, stačilo by použít index()
a substr()
nebo sub()
:
/sbin/ip addr show dev eth0 | awk '{ if ($1=="inet") { sub("/.*", "", $2); print $2; } }'
addr=${addr%/*}jsem zmenil na
addr=${addr%.*}Sice nevim proc, ale funguje to perfektne :)
bash(1)
, sekce Parameter Expansion.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.