[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Bug on bash shell - $PWD (and consequentely prompt) not updated whil
Re: Bug on bash shell - $PWD (and consequentely prompt) not updated while renaming current folder.
Sat, 20 Jun 2020 13:28:03 -0400
> On Jun 20, 2020, at 11:26 AM, Ilkka Virta <firstname.lastname@example.org> wrote:
>> On 20.6. 3.51, email@example.com wrote:
>> When we rename the current working directory, $PWD doesn't get updated
>> as it would as it would if we just did a simple "cd directory". Fix:
>> Probably: Trigger the current working directory refresh event, like it
>> is already done with the cd command. Because we can be renaming our own
>> current working directory, so a simple trigger is needed when mv is
>> executed and renaming the current working directory. At the same time,
> The directory can get renamed by some completely unrelated background
> process, without any action from the shell, so you'd need to recheck
> it every time the prompt is printed, not just when a particular
> command, or any command, is launched. (The name of the directory
> could even change while the shell is waiting for a command line to
> be input.)
> Running cd . should reset PWD to show the new name, and if you
> need that often, I suppose you could run it from PROMPT_COMMAND:
> /tmp$ PROMPT_COMMAND='cd .'
> /tmp$ mkdir old
> /tmp$ cd old
> /tmp/old$ mv /tmp/old /tmp/new
> /tmp/new$ echo $PWD
Here's something fun though:
$ PROMPT_COMMAND='cd .'
$ readlink /tmp
$ mkdir /tmp/old
$ cd /tmp/old
$ echo "$PWD"
$ mv /tmp/old /tmp/new
$ echo "$PWD"
Not wrong, but maybe unexpected to some.
Re: Bug on bash shell - $PWD (and consequentely prompt) not updated while renaming current folder., Chet Ramey, 2020/06/20