[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170818112414.GJ10864@orbyte.nwl.cc>
Date: Fri, 18 Aug 2017 13:24:14 +0200
From: Phil Sutter <phil@....cc>
To: David Laight <David.Laight@...LAB.COM>
Cc: Stephen Hemminger <stephen@...workplumber.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [iproute PATCH v2 2/2] ifcfg: Quote left-hand side of [ ]
expression
On Fri, Aug 18, 2017 at 09:32:52AM +0000, David Laight wrote:
> From: Phil Sutter
> > Sent: 17 August 2017 18:10
> > This prevents word-splitting and therefore leads to more accurate error
> > message in case 'grep -c' prints something other than a number.
> >
> > Signed-off-by: Phil Sutter <phil@....cc>
> > ---
> > ip/ifcfg | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/ip/ifcfg b/ip/ifcfg
> > index 083d9df36742f..30a2dc49816cd 100644
> > --- a/ip/ifcfg
> > +++ b/ip/ifcfg
> > @@ -131,7 +131,7 @@ noarp=$?
> >
> > ip route add unreachable 224.0.0.0/24 >& /dev/null
> > ip route add unreachable 255.255.255.255 >& /dev/null
> > -if [ `ip link ls $dev | grep -c MULTICAST` -ge 1 ]; then
> > +if [ "`ip link ls $dev | grep -c MULTICAST`" -ge 1 ]; then
>
> You could drag all these scripts into the 1990's by using $(...)
> instead of `...`.
That's a different kettle of fish IMO, using $() doesn't change the
situation this addresses:
| $ [ $(echo foo bar) -eq 0 ] && echo ok
| bash: [: too many arguments
| $ [ "$(echo foo bar)" -eq 0 ] && echo ok
| bash: [: foo bar: integer expression expected
Cheers, Phil
Powered by blists - more mailing lists