在 bash 中我将 PROMPT 设置如下
PS1="$(scutil --get ComputerName) \W\\$ "
我只看到计算机名称和我所在当前目录的名称,而不是完整路径和 $ 符号。
my-computer my-folder$
我的问题是如何将我的 zsh 提示符设置为与 bash 提示符一样。我一直在谷歌上搜索,但找到的解决方案并不完全符合我的要求。
答案1
查看扩展提示序列和简单快捷的退出手册页的部分内容,zsh
位于man zshmisc
。
此提示字符串PS1='%m %1d$ '
显示机器名称 ( %m
) 和当前路径的尾随部分 ( %1d
)。
答案2
答案3
仅显示后面跟着符号的目录%
,例如:
/usr/local%
输入以下内容~/.zshrc
(如果文件不存在则创建):
PROMPT='%~%# '
%~
显示当前目录,但您的 HOME 目录将被替换为~
:
/usr/local% cd
~% pwd
/Users/7stud
% cd erlang_programs
~/erlang_programs% pwd
/Users/7stud/erlang_programs
~/erlang_programs% cd /opt/local
/opt/local%
这使得提示简短而甜蜜。
文档说%#
将显示一个%
符号,但如果您使用特权,例如使用命令su
,则它将显示一个#
符号。当我使用 时sudo
,它仍然显示一个%
符号。
答案4
在我看来
PS1='%~: '
~/.zshrc 中的任何位置都是最干净/最简单的。
PS1='%~ $: '
也挺好的。