SSH 客户端(putty、GCP web)经常显示上一个命令的残余

SSH 客户端(putty、GCP web)经常显示上一个命令的残余

我在不同的 SSH 客户端中看到了它,但至少可以保证 Putty 和 GCP Web 控制台(Web 浏览器中的 SSH)有这个。

当您滚动历史记录然后运行上一个命令时 - 有时(通常是长文本) - 上一个命令的片段会卡在左侧。

它仍然有效,但显示不再反映现实。可以弄清楚命令的文本,但光标现在表现不同,并且如果命令填充了 2-3 行文本,通常无法正确编辑命令 - 光标停留在中间。

这种情况经常发生在我身上,无论使用远程系统还是本地系统。所以这不是网络延迟。唯一不变的是 - 远程端始终是 CentOS 8/9,本地端是 Windows。

有什么办法可以让它消失吗?

基本插图

$> some-commansome-command with params here

编辑:事后看来,提示变量很重要,而损坏的变量是

\\e[0;32m[\\u \\D{%T} \\w]\\$ \\e[m

答案1

感谢@user1686,我找到了正确的方法,并最终找到了“修复”它的方法。显然(这并不奇怪)99% 的博客只是复制粘贴来从广告中赚钱。

真正需要说的是:

  1. 问题出在自定义PS1设置上
  2. 可以通过更换来修复

e[colour-codese[colour-codes] 逃离每一个e[]

IE

"\\e[0;32m[\\u \\D{%T} \\w]\\$ \\e[m "应该"\[\e[32m\][\\u \\D{%T} \\w]\\$\[\e[0m\] "

相关内容