Приглашение оболочки, основанное на расположении в файловой системе

Я должен работать в трех основных каталогах в корневой файловой системе - home / username, project и scratch. Я хочу, чтобы в командной строке отображалось, в каких каталогах верхнего уровня я нахожусь.

Вот что я пытаюсь сделать:

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, поэтому буду признателен за любую помощь в исправлении моего кода.

Ответы на вопрос(2)

Ваш ответ на вопрос