Zsh包括使用%?
转义序列在提示中显示上一条命令的返回代码/退出代码的功能。显示上一个命令退出代码时自定义zsh的提示
但是我想有如下提示:
[email protected] ~ [%?] %
当退出代码是从0不同和:
[email protected] ~ %
当退出代码是0。
如果我单独使用%?
它总是显示,即使%?
为0. 另外我想要方括号,但只有当出口代码不为0.
要做到这一点,最简单的方法是什么?
Zsh包括使用%?
转义序列在提示中显示上一条命令的返回代码/退出代码的功能。显示上一个命令退出代码时自定义zsh的提示
但是我想有如下提示:
[email protected] ~ [%?] %
当退出代码是从0不同和:
[email protected] ~ %
当退出代码是0。
如果我单独使用%?
它总是显示,即使%?
为0. 另外我想要方括号,但只有当出口代码不为0.
要做到这一点,最简单的方法是什么?
的位置在哪里,你想退出代码出现PS1
补充一点:
%(?..[%?])
这是一个条件表达式。如果第一个点之前的表达式为真,则输出两个点之间的部分(本例中不包含任何内容)。如果第二个点是假的,则输出第二个点之后的部分。
例如:
PS1='%n%m %~ %(?..[%?])%# '
或者,您可以:
setopt PRINT_EXIT_VALUE
总是打印显示前一个返回值换行符。
我不喜欢这个用于普通用途,但它通常用于调试shell脚本。
伟大的除了我的提示。我目前在robbyrussell主题中进行了自定义:PROMPT ='$ {ret_status}%{$ fg [cyan]%}%n @%m:%4〜%{$ reset_color%} $(git_prompt_info)' – 2017-01-30 16:51:32