簡體   English   中英

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 終端 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM