我正在从bash切换到zsh。
我想更新我的新zsh提示并四处寻找方法,但我只通过oh-my-zsh找到了“解决方案”。
目标:
Location: ~/dir_1/dir_1_1/dir_1_1_1
我有什么:
Location: dir_1_1_1
代码(source):
PS1='${SSH_CONNECTION+"%{$fg_bold[green]%}%n@%m:"}%{$fg_bold[green]%}Location: %c%{$reset_color%}$(git_prompt_info) '
答案 0 :(得分:6)
如上面评论中提到的Horacio Chavez,您需要查看此处:http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html,了解有关如何更改zsh中显示路径的详细信息。
在这种情况下,如果您要查找与主文件夹相关的路径,请在zsh-theme文件中包含%~
。您的提示现在看起来像这样:
PS1='${SSH_CONNECTION+"%{$fg_bold[green]%}%n@%m:"}%{$fg_bold[green]%}Location: %~%{$reset_color%}$(git_prompt_info) '
请注意,我只在提示中更改了一个字符。已为%c
交换%~
。 %c
只会提供您当前的目录(see the document link above, or here)
对于完整路径,您可以使用%/
答案 1 :(得分:6)
要保留原始的提示格式(颜色,git信息以及在此之前的其他自定义设置)(与路径信息相关的除外),您可以在〜/ .zshrc末尾附加以下内容:
PROMPT=${PROMPT/\%c/\%~}
正如@caleb-adams和@fend25所指出的那样,密钥是用
%c
替换%~
(只是文件夹名),以包括完整路径(或在$ 〜)。有关更多信息,请参见http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html
答案 2 :(得分:1)
向提示添加bash样式的dir路径的最简单方法。只需将其添加到~/.zshrc
:
setopt PROMPT_SUBST
PROMPT='%n@%m: ${(%):-%~} '
具有路径的部分为${(%):-%~}
。可以根据您的生活方式添加颜色:)