如何使用Golang清除Linux终端的最后一行内容
解决Linux下CLI应用清除终端最后一行的问题
你之前用的\033[1不是有效的清除行的ANSI转义序列,这个只是粗体格式的起始片段(完整是\033[1m),自然没法清除文本。要实现清除最后一行,得用正确的终端控制码:
- 如果你已经用
\r把光标移到行首,接着用*\033[K*就能清除从光标到行尾的所有内容(也就是整行),组合起来的代码是:fmt.Print("\r\033[K") - 也可以直接用*
\033[2K*清除整行内容,再用\r把光标移回行首,代码如下:fmt.Print("\033[2K\r")
简单解释下这些控制码的作用:
\r:让光标回到当前行的开头位置\033[K:清除光标到行尾的所有字符\033[2K:直接清除整行的所有内容,不管光标当前在哪
内容的提问来源于stack exchange,提问作者pesho hristov
相关产品推荐
相关产品推荐

