[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#6194: bug: pwd

From: eran shaham
Subject: bug#6194: bug: pwd
Date: Fri, 14 May 2010 23:47:52 +0300

I suggest you add into
$man pwd
$info pwd

the remark that was on
$ help pwd
pwd: pwd [-LP]
    Print the current working directory.  With the -P option, pwd prints
    the physical directory, without any symbolic links; the -L option
    makes pwd follow symbolic links.

It would save other people bothering you on that subject :-)


On Fri, May 14, 2010 at 22:57, Bob Proulx <address@hidden> wrote:

> retitle 6194 pwd tracks logical paths through symlinks
> tags 6194 + wontfix
> thanks
> eran shaham wrote:
> > `pwd' prints the fully resolved name of the current directory.  That
> > is, all components of the printed name will be actual directory
> > names--*none will be symbolic links*.
> Thank you for the report.  But you are confusing the coreutils
> standalone 'pwd' with your shell's internal builtin 'pwd'.  The
> coreutils pwd command does not behave as you describe.  You are
> invoking the shell's builtin pwd.
>  $ type pwd
>  pwd is a shell builtin
> But regardless of that what you are seeing is the shell's logical path
> record keeping in action.  This is the behavior that most people
> prefer and so it is the default.  I can tell taht you however are like
> me and do not prefer it.  In which case if you are using the bash
> shell you can change your shell behavior to use only physical paths.
>  set -o physical
> And now the shell will not track logical paths.  Putting that in your
> $HOME/.bashrc file will give you the behavior you desire.
> > When you try the following:
> > mkdir dirA dirB
> > cd dirA
> > ln -s ../dirB/ lnkB
> > cd lnkB
> > pwd
> The pwd above is the shell's builtin pwd.  It is not the coreutils
> pwd.  The shell tracks the logical path in the PWD environment
> variable and reports it as if it were a real path.  See the bash pwd
> documentation for details.
>  help pwd
> Look at the -L and -P options.
> > where lnkB is obviously a symbolic link and not an actual directory name.
> That is intentional behavior.
> Bob

reply via email to

[Prev in Thread] Current Thread [Next in Thread]