Harald van Dijk <[email protected]> wrote:

> > 
> >     echo .*/Makefile
> > 
> > which is:
> > 
> >     ../Makefile ./Makefile
>
> False. Assuming those paths exist and no other paths match, the 
> currently expected result depends. It can either be what you wrote, or 
> it can be ".*/Makefile" if readdir() does not return entries for "." and 
> "..". Even if there were not already shells that skipped "." and ".." 
> internally, portable shell scripts would still not be able to rely on 
> ".*" or ".*/Makefile" expanding the way you are expecting.
>
> You know this already: you specifically pointed out this problem in your 
> reply to Stephane Chazelas (despite the immediately following paragraph 
> that you snipped already addressing that problem). I do not know why you 
> would claim that ".*/Makefile" has a guaranteed expansion here.

I of course know this but since the behavior depends on the filesystem, a user 
could know that the underlying filesystem returns "." and ".." and thus 
expects above behavior.

The basic idea behind set -o globskipdot is to allow forseeable results.

Jörg

-- 
 EMail:[email protected]                    (home) Jörg Schilling D-13353 Berlin
    [email protected] (work) Blog: http://schily.blogspot.com/
 URL: http://cdrecord.org/private/ http://sf.net/projects/schilytools/files/'

Reply via email to