The following command on ubuntu 12.04, 14.04 and CentOS 7.x
returns null:
expr "mtu 1500" : '.*mtu \([0-9]+\)'
But the following works correctly:
expr "mtu 1500" : '.*mtu \([0-9]\+\)'
I am not sure about the portability implications as there
seems to be very sparse documentation about this but
this fixes a bug in 2 of the most popular distributions.
VMware-BZ: #
1638654
Signed-off-by: Gurucharan Shetty <guru@ovn.org>
if expr "$state" : '.*\bdynamic\b' > /dev/null; then
linkcmd="$linkcmd dynamic"
fi
- if qlen=`expr "$state" : '.*qlen \([0-9]+\)'`; then
+ if qlen=`expr "$state" : '.*qlen \([0-9]\+\)'`; then
linkcmd="$linkcmd txqueuelen $qlen"
fi
if hwaddr=`expr "$state" : '.*link/ether \([^ ]*\)'`; then
if brd=`expr "$state" : '.*brd \([^ ]*\)'`; then
linkcmd="$linkcmd broadcast $brd"
fi
- if mtu=`expr "$state" : '.*mtu \([0-9]+\)'`; then
+ if mtu=`expr "$state" : '.*mtu \([0-9]\+\)'`; then
linkcmd="$linkcmd mtu $mtu"
fi
if test -n "$linkcmd"; then