Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Filename generation: instruct zsh not to follow symbolic links?
On 2026-07-16 02:57:46 +0200, Mikael Magnusson wrote:
> On Thu, Jul 16, 2026 at 1:47 AM Vincent Lefevre <vincent@xxxxxxxxxx> wrote:
> >
> > In filename generation, is there a way to instruct zsh not to follow
> > symbolic links?
> >
> > Unfortunately, it is not possible to use glob qualifiers on
> > pathname components (except the last one, i.e. ending the pattern),
> > e.g. *(/)/foo, even though there would be no ambiguity in parsing
> > (because a slash cannot appear in a pathname component).
>
> No, but you can do things like
> () { mycmd $^@/foo } *(/)
> which conveniently doesn't need any named temporary parameters.
I get "No such file or directory" errors for some directories.
But this is too complex anyway, and perhaps not usable in some
situations.
> fwiw, this is perfectly valid:
> bing/(bar/)#foo
> so the parsing might be less easy than you think. (Unless you were
> thinking about looking for the )/ sequence? Maybe that would work, but
> who can say for sure). I'm not exactly sure what you mean by "because
> a slash cannot appear in a pathname component", are you referring to
> the / inside the (/) or the one after? Because obviously all other
> glob qualifiers are not the '/' character.
I would rather think that a (/ sequence could have a special meaning.
That should be easy to parse.
--
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Pascaline project (LIP, ENS-Lyon)
Messages sorted by:
Reverse Date,
Date,
Thread,
Author