在 Shell 会话之间保留 $OLDPWD

在 Shell 会话之间保留 $OLDPWD

我经常离开终端,第二天再运行它。然后我希望能够快速返回上一个工作目录。

我想像cd -往常一样这样做。但$OLDPWD它不会在终端会话之间保留。

因此我添加了一个别名,用于exit写入pwd文件并在下次启动时读取它。

alias exit='pwd > ~/.lwd && exit;'
test -f ~/.lwd && export OLDPWD=`head -1 ~/.lwd`

这对于 来说非常有效exit

我如何为 创建相同的别名(或设置陷阱)Ctrl+D

答案1

用于trap添加处理程序EXIT

trap 'pwd > ~/.lwd' EXIT

这应该可以处理exit命令和CtrlD。其余的,你可以像使用别名一样进行操作。

答案2

谢谢安瓦尔引导我走向正确的方向。这篇文章来自 Unix & Linux Stack Exchange帮助过我。

我创建了一个包含以下内容的文件~/.bash_logout

echo "$PWD" > ~/.lwd

我补充说~/.bashrc

test -f ~/.lwd && export OLDPWD=`head -1 ~/.lwd`

这适用于exit CtrlD用于 gnome-terminal 和 ssh 连接。

相关内容