On Thu, Feb 17, 2011 at 7:09 PM, Clark J. Wang <dearv...@gmail.com> wrote:
> See following script output: > > bash-4.2# cat quoted-pattern.sh > [[ .a == \.a* ]] && echo 1 # not quoted > [[ aa =~ \.a* ]] && echo 2 # quoted > > [[ aa =~ \a. ]] && echo 3 # not quoted > [[ aa =~ \a\. ]] && echo 4 # quoted > bash-4.2# bash42 quoted-pattern.sh > 1 > 3 > bash-4.2# > > From my understanding 1 2 3 4 should all be printed out. > > The point is: ``Any part of the pattern may be quoted to force it to be matched as a string.'' And backslash is one of bash's quoting chars. But in my examples, a pattern with `\' in it sometimes is considered to be quoted and sometimes unquoted. It's not clear to me what's the exact rule to tell if a pattern is quoted or not. > -- > Clark > >