Re: [PATCH 04/48] Use [[ ]] instead of [ ] for conditional checking when running in bash.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Am 01.07.2010 00:22, schrieb Victor Lowther:
> On Wed, 2010-06-30 at 23:56 +0200, Thomas Bächler wrote:
>> Am 30.06.2010 23:47, schrieb Victor Lowther:
>>> It is worth 10 - 30% speedup whenever you want to compare something.
>>
>> Where do you get this from? I always used [ ], and I found it
>> sufficient. Why is [[ ]] faster?
> 
> [[ ]] is faster because it is bash syntax, not a builtin command like
> [ is. In most programs, both are fast enough, but you an see the
> difference if you run otherwise identical tests in a loop one million
> times.
> 
>>
>>> -if [ "$USECOLOR" = "YES" -o "$USECOLOR" = "yes" ]; then
>>> +if [[ $USECOLOR = YES || $USECOLOR = yes ]]; then
>>
>> Why do you get rid of the quoting here? Quoting is nice.
> 
> Because [[ ]] is bash syntax instead if a builtin comand, it relaxes the
> usual expansion rules -- inside of [[ ]], word splitting and pathname
> expansion are not performed, so you only have to quote strings if they
> need to be single-quoted.
> http://wiki.bash-hackers.org/syntax/ccmd/conditional_expression has more
> info.
> 

Sounds nice. This will probably mean that I will apply all the patches
that do this transition - however, it might probably be nicer to squash
all of those into one commit.

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux