[英]How can I modify my zsh terminal prompt to show the current working directory and current git branch (if applicable)?
[英]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 終端 session 中,命令
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 用於我們登錄時要執行的命令,因此非登錄 shell 不會獲取此文件。
感謝愛德華·羅梅羅提供的信息。 我對答案的批評是它包含四個浪費的字符,'[',']','','%'。 相反,使用 PROMPT='%d>' 會產生清晰的絕對路徑,如下所示:
/Users/myuser/test-workflow-branch-only>
無論如何,很高興讓我不再頭疼,並開始收獲使用 zsh 的美妙好處,無論它們是什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.