如何在Lua程序中清除控制台?

我正在使用控制台制作我的第一个Lua程序,我需要找出如何在不仅仅添加大量\n的情况下从控制台中删除所有文本。

点赞
用户3150326
用户3150326

你可以使用 os.execute()

在Windows上:

os.execute("cls")

在Unix上:

os.execute("clear")
2014-04-20 20:48:15
用户1955931
用户1955931

如其他回答所提到的,你可以使用os.execute()来清除控制台。然而,如果你无法使用此函数,那么你可能需要不停地输出新的换行符,以便让用户看到控制台上是"空的"。

但是,如果你能使用os.execute(),那么你应该绝对使用它。

for i = 1, 255 do
    print()
end
2014-04-22 00:02:51
用户107090
用户107090

如果您的控制台能够理解 ANSI 终端的转义序列,请尝试使用 io.write("\027[H\027[2J")

2014-04-24 11:01:54
用户8160218
用户8160218

抱歉晚回复,但是如果有人查看这篇文章,这是一种做法:

如果 os.execute("clear") 返回错误,则执行 os.execute("cls"),
如果 os.execute("cls") 返回错误,则循环25次打印换行符。

这将适用于任何操作系统。

2017-06-14 11:39:35