shell 提示符没有显示目录

shell 提示符没有显示目录

我使用 /bin/bash 作为 shell。但我的提示没有显示当前目录。它只显示

-bash-4.2$

我在 ~/.bashrc 中创建了一个文件,在其中添加:

export PS1='$(whoami)@$(hostname):$(pwd)$ '

如果我注销并再次登录,提示仍然相同。

我如何更改提示以显示用户和当前目录?

答案1

当 Bash 作为“登录”shell 调用时,~/.bashrc 不会运行。要使此功能正常工作,您需要添加

. ~/.bashrc

到您的 ~/.profile 或 ~/.bash_profile 脚本(它是 bashrc 的“登录 shell”等效项)。


PS1不需要导出到环境中(因为它由 shell 本身使用,而不是由您从中运行的命令使用)。通过使用 shell 变量或甚至 bash PS1 特定的扩展,可以更有效地实现相同的提示符样式:

PS1='$USER@$HOSTNAME:$PWD\$ '
PS1='\u@\h:$PWD\$ '    # doesn't collapse $HOME
PS1='\u@\h:\w\$ '      # collapses $HOME into ~

相关内容