我有一个问题,当我执行“systemctl status”等命令时,输出会写入到 bash 输出的前几行。通常输出写在当前行上方约 20 行... PS1 似乎不是问题,因为我使用 PS1=$ 来保持简单。还尝试了以下提到的解决方案:
我正在使用 putty 连接到嵌入式目标上的 ubuntu。例如,如果我在文件上执行“cat”,我没有看到这个问题。
答案1
这个问题太模糊了,但我会检查一下:
检查终端 (
TERM
) 以及终端的设置。它们应该匹配,但最好使用一些标准的(并且系统应该安装对此类终端的支持)。检查字体。同样在这种情况下,请尝试使用通用字体。
答案2
如果使用旧的 xterm和终端功能systemctl status
初始化终端(就像它显示全屏应用程序一样),您将看到此行为。您可以使用 infocmp 查看那些,例如,smcup
rmcup
smcup=\E[?47h, rmcup=\E[2J\E[?47l,
这些在切换到/从备用屏幕之前/之后保存/恢复光标位置。如果您在 putty 中禁用了备用屏幕功能,保存/恢复光标转义序列仍然有效。
当备用屏幕被禁用时,正确实现的新型 smcup/rmcup 会禁用光标保存/恢复(我不记得这是否在 Putty 中正确实现了......)。
进一步阅读: