我必须在根文件系统下的三个主要目录中工作——主目录/用户名、项目和临时目录。我希望我的 shell 提示符显示我在这些顶级目录中的哪一个。
这是我正在尝试做的事情:
top_level_dir ()
{
if [[ "${PWD}" == *home* ]]
then
echo "home";
elif [[ "${PWD}" == *scratch* ]]
then
echo "scratch";
elif [[ "${PWD}" == *project* ]]
then
echo "project";
fi
}
然后,我将 PS1 导出为:
export PS1='$(top_level_dir) : '
不幸的是,这并没有按我的意愿工作。当我在我的主目录中时,我得到home :
了我的提示,但是如果我切换到临时或项目,那么提示不会改变。我不太了解 bash 脚本,所以如果能帮助我更正我的代码,我将不胜感激。