我怎样才能改变我输入的命令的颜色而不改变其后的输出?

我怎样才能改变我输入的命令的颜色而不改变其后的输出?

export PS1='\[\033[1;31m\]\u\[\033[0m\]:\[\033[4;31m\]\W\[\033[0m\] \[\033[0;33m\]\$'

这是我现在的提示。然而,这描绘了一切$ 也是黄色的。我希望只有 $ 和我输入的命令是黄色的,而输出是“无色的”。

答案1

假设你的 shell 是bash并且你没有任何其他依赖的脚本PROMPT_COMMAND,那么你可以使用bash-preexec执行此操作。将以下内容放在 的底部.bashrc

. ~/.bash-preexec.sh
preexec() { echo -ne '\033[0m'; }

相关内容