macOS 下如何获取 zsh prompt of form: [working-directory] #
How get zsh prompt of form: [working-directory] # under macOS
在 macOS Catalina (10.15.6) 中,我想将 zsh 用于终端会话。以前我一直使用默认的 bash。对于 bash,我有一个包含行
的 .profile
export PS1="[\u@\h:\w]$ "
给出了以下形式的提示:
[me@myhost:current-dir]$
我想要 zsh 类似的东西,但没有 user-name@host-name 前缀,实际提示用 # 而不是 $。
在 zsh 终端会话中,命令
PROMPT='[%/]%% '
给出预期的提示,当前目录括在方括号中。
我当然不想每次都手动输入。相反,我想在 .zprofile 中设置它。所以在 .zprofile 中我包含了行
export PROMPT='[%/]%% '
但是,这并没有像预期的那样工作——提示现在的形式是:
me@myhost current-dir %
问题:如何让zsh提示符如下所示?
[current-dir] %
把下面的导出添加到~/.zshrc,否则不行
export PROMPT='[%1~] %%'
那会给你下面的,我的目录名是test-workflow-branch-only
[test-workflow-branch-only] %
注意:这会在 ~/
目录中为您提供 [~] %
,所以当您看到
时不要惊慌
更新 - 每个评论问题
我们将其添加到 ~/.zshrc 中,因为该文件在所有交互式 shell 配置中均有来源。文件 ~/.zprofile 用于我们登录时要执行的命令,因此 non-login shell 不会获取此文件。
感谢爱德华·罗梅罗提供的信息。我对答案的批评是它包含四个浪费的字符,'[',']','','%'。相反,使用 PROMPT='%d>' 会产生清晰的绝对路径,如下所示:
/Users/myuser/test-workflow-branch-only>
无论如何,很高兴把这个头痛的事情抛在脑后,开始享受使用 zsh 带来的美妙好处,无论它们是什么。
在 macOS Catalina (10.15.6) 中,我想将 zsh 用于终端会话。以前我一直使用默认的 bash。对于 bash,我有一个包含行
的 .profileexport PS1="[\u@\h:\w]$ "
给出了以下形式的提示:
[me@myhost:current-dir]$
我想要 zsh 类似的东西,但没有 user-name@host-name 前缀,实际提示用 # 而不是 $。
在 zsh 终端会话中,命令
PROMPT='[%/]%% '
给出预期的提示,当前目录括在方括号中。
我当然不想每次都手动输入。相反,我想在 .zprofile 中设置它。所以在 .zprofile 中我包含了行
export PROMPT='[%/]%% '
但是,这并没有像预期的那样工作——提示现在的形式是:
me@myhost current-dir %
问题:如何让zsh提示符如下所示?
[current-dir] %
把下面的导出添加到~/.zshrc,否则不行
export PROMPT='[%1~] %%'
那会给你下面的,我的目录名是test-workflow-branch-only
[test-workflow-branch-only] %
注意:这会在 ~/
目录中为您提供 [~] %
,所以当您看到
更新 - 每个评论问题
我们将其添加到 ~/.zshrc 中,因为该文件在所有交互式 shell 配置中均有来源。文件 ~/.zprofile 用于我们登录时要执行的命令,因此 non-login shell 不会获取此文件。
感谢爱德华·罗梅罗提供的信息。我对答案的批评是它包含四个浪费的字符,'[',']','','%'。相反,使用 PROMPT='%d>' 会产生清晰的绝对路径,如下所示:
/Users/myuser/test-workflow-branch-only>
无论如何,很高兴把这个头痛的事情抛在脑后,开始享受使用 zsh 带来的美妙好处,无论它们是什么。