我在一台新机器上并安装了 Windows Terminal [Microsoft Store] 和 Git Bash [latest]。我运行了一个构建脚本来记录它的进度,每当出现换行符时(可能还有其他字符?),我会得到奇怪的字符,所有内容都打印在同一行:
-
它应该是:←[1A←[1m> Connecting to Daemon←[m←[22D←[1B←[2A←[1m<←[0;1m-------------> 0% INITIALIZING [73ms]←[m←[38D←[1B←[1m> Evaluating settings←[m←[0K←
Connecting to Daemon <-------------> 0% INITIALIZING [73ms] Evaluating settings
- 我阅读了有关 ANSI CON 或有关注册表和控制台键的内容,但并没有真正得到任何地方;在另一个系统上,一切正常,但设置有多个差异,包括安装了 Cygwin,所以我不能确定是产品版本还是其他解决了这个问题的东西。
这种行为的根源是什么,如何解决?
原因很奇怪,但解决方案很简单。在 GitBash
.bashrc
文件的末尾添加以下行无需安装 Cygwin 即可使用。
仍在为此挣扎。您可以使用而不是 export TERM=cygwin
在你的 .bashrc/.zshrc 中。这会删除字符并保留颜色,但在启动时会出现一个错误:“/.zshrc:179: can't find terminal definition for eterm-256color”。
如果您发现任何工作完美无缺,请告诉我们。