我希望我的 bash 提示字符串 1 同时具有日期/时间和最后一个命令的返回码。所以,我以为我可以做到
PS1="\[\e[00;34;01m\]\$(date +'%a %b %e, %T')\[\e[35m\] \$?\[\e[00m\] >> "
我认为这会给我一个蓝色日期(比如Thu Jul 2, 01:01:01
)一个紫色的返回码,然后只是>>
(假设 ansi 转义序列根据终端的大多数托盘产生“正常”颜色)。但是,它不起作用。
PS1="\$? >> "
和
PS1="\$(date +\"%a %b %e, %T\") >> "
但是,两者都有效,当我以第一种方式进行时,只有第一种"\$"
被解释,而另一种只有在我的 bashrc 被获取时才会被解释。(因此,最初"\$?"
评估为并保持。)0
0
关于为什么会发生这种情况的任何想法?
注意:我什至尝试过PS1='$(date +"%a %b %e, %T") $? >> '
其他人可以在 Unix bash 中复制这个吗?如果是/如果不是,请发表评论。