[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Inconsistence when checking if a pattern is quoted or not for `==' a
From: |
Greg Wooledge |
Subject: |
Re: Inconsistence when checking if a pattern is quoted or not for `==' and `=~' in [[ ]] |
Date: |
Thu, 17 Feb 2011 10:28:54 -0500 |
User-agent: |
Mutt/1.4.2.3i |
On Thu, Feb 17, 2011 at 05:07:40PM +0200, Pierre Gaston wrote:
> On Thu, Feb 17, 2011 at 4:56 PM, Clark J. Wang <dearvoid@gmail.com> wrote:
> > 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.
> aaah well the "it" in "force it" is the part, not the whole pattern. so if
> you do \.. the first . is a litteral dot, the second one matches any char.
I think you're all missing what Clark's question actually is. Consider
this:
imadev:~$ cat <<\EOF
> $PATH
> EOF
$PATH
The use of a backslash in front of one of the characters of the
here-document's sentinel word is considered "quoting". And because the
sentinel word is "quoted", parameter expansions in the body are not done.
Clark is asking why the use of a backslash before a character on the
right-hand-side of =~ is not considered "quoting" the same way it is when
doing it to a here-document's sentinel word.
My own answer to that is "Who cares, stuff it all in a variable and don't
worry about it," but I suppose it's important that someone cares. ;-)
- Re: Inconsistence when checking if a pattern is quoted or not for `==' and `=~' in [[ ]], (continued)