Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: how to get the absolute pathname of the current shell?
On 2013-12-09 09:53:30 +0100, Vincent Lefevre wrote:
> On 2013-12-06 08:30:20 -0800, Bart Schaefer wrote:
> > On Dec 6, 2:27pm, Vincent Lefevre wrote:
> > } Currently I'm doing: ${$(whence -p ${0#-}):a}
> > }
> > } But this doesn't work when there are symbolic links
> >
> > If the above is otherwise good enough, why not ${$(whence -p ${0#-}):A}
> > which uses realpath() when it is available? [See above about different
> > code depending on OS ...]
>
> Using :A instead of :a doesn't solve the problem.
After looking more closely, this is because "resolution of `..' occurs
before resolution of symbolic links" (see zshexpn(1) man page). Since
zsh's resolution of `..' is broken by design, i.e. incompatible with
real resolution, as done by realpath (and the Linux kernel), :A and :a
mustn't be used here.
--
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)
Messages sorted by:
Reverse Date,
Date,
Thread,
Author