用windows terminal
连本地的wsl
,在每次使用tail -f xxx.log
观察文件变化之后,所有的键盘输入字符,终端都不显示了。
但实际上,键盘的输入是到了终端的,比如要是能记住输入了什么命令,那么该命令能正常执行,而且终端能正常显式STDOUT
。
也不知道我说清楚了没有,反正就是很恶心。
另外,我的 bash 使用了 starship ,不知道跟这个有没有关系
1
YGHMXFAL 2023-09-09 16:30:39 +08:00
盲打`reset`重置试试呢?
|
2
ysc3839 2023-09-09 20:44:29 +08:00 via Android
是任意 log 文件都会遇到吗?空文件呢?
如果是的话,八成又是遇到 Windows Terminal 的 bug 了。 Windows Terminal 为了兼容传统 Windows 控制台应用,内部工作逻辑是类似 screen 或 tmux 的,程序输出的内容会先更新内部的“screen”,再输出 screen 的变化。有这一层转换,就难免不支持某些特性,或者可能会遇到一些 bug 。 曾经有几个版本的 Windows Terminal ,配合 MSYS2 OpenSSH 使用时,按 Ctrl+C 不能发送到远程服务器,会停止本地的 ssh 进程。自从那时候起我就换 mintty 了。 |
5
amlee OP @ysc3839 疯了,疯了,好像不是终端的 bug ,我试了 vscode 中的终端和 tabby ,都出现了这个问题,头大
是任意的文件都会出现(包括空间),tail -f 任意文件,然后 ctrl + c ,终端就不显式输入了 |
8
YGHMXFAL 2023-09-10 12:38:20 +08:00
还有一种可能,你的 xxx.log 里是不是有肉眼不可见地转义字符?那可能导致奇怪地显示行为~~~
|