【发布时间】:2026-01-10 15:40:01
【问题描述】:
我创建了一个很好的提示字符串,可以让我跟踪当前的工作目录。但是我犯了一个简单的错误。我没有正确使用括号“[”和“]”,这会导致 bash 错误地表示提示中的字符数,从而阻止正确包装长命令。
export PS1="\[\033[0;34m\]\w \033[0;30m\]\]\$ "
我尝试过this helpful example,但不确定要解决什么问题。
【问题讨论】:
-
提示中长度为 0 的每个部分都应包含在
\[...\]中。 -
\w的输出算作长度0吗?
-
\w在内部由bash扩展,因此它知道如何计算结果字符串的长度。它不需要被封闭。只有 终端 减少为 0 长度字符串的转义序列等字符需要括起来。
标签: bash prompt .bash-profile