如何在Shell前缀中仅显示工作目录名称?

如何在Shell前缀中仅显示工作目录名称?

我目前在一家真的长目录。大概是这样的:

~/Documents/c_prog/this_is_a_really_long_project_name/sub_directory/test_case/

sername@hostname ~/test_case$ 如果我可以在这个目录中执行一个命令,并且它只会显示 *而不是这面文字墙,那就太棒了。当我重新启动 bash 时,它应该会再次正常。每次在这个目录中时我都可以执行这个命令。

我怎样才能实现这样的目标?

答案1

\w将正常中的转义序列替换PS1\W.因此,从你的例子来看,它会是这样的:

PS1='\u@\h \W\$ '

答案2

bash4 或更高)

如果设置PROMPT_DIRTRIM为非零数字,它将用 替换后面的目录~...保留给定数量的尾随目录。例如,将其设置为 1 将为您提供

username@hostname ~/.../test_case$

相关内容