7

我正在运行 Lua 编程书中的代码... http://www.lua.org/pil/3.6.html

当我在终端解释器中运行这段代码时......它会永远继续读取输入......

list = nil
    for line in io.lines() do
      list = {next=list, value=line}
end

Ctrl C 让我回到提示符/bash。是否有另一个命令可以打破?如何在不退出解释器的情况下从一大块 lua 代码中中断/返回?

4

3 回答 3

4

Ctrl-C通过在类 Unix 系统中按下,您正在向您的进程发送 的信号SIGINT,默认情况下该信号将终止该进程。

您的程序将永远继续从输入中读取,因为它在调用 时被阻塞io.lines(),它会继续从标准输入中读取。要中断它,请向您的终端发送一个EOF,这是通过Ctrl-D在类 Unix 系统中按下来完成的。

在 Windows 上,发送的键EOFCtrl-Z.

于 2013-09-13T01:01:59.617 回答
3

Ctrl-Z您可以使用或指示标准输入的输入结束Ctrl-D

于 2013-09-12T23:28:47.897 回答
0

CTRL-U删除光标位置之前的所有字符,因此删除整行。它在 Linux shell 中也可以这样工作。

于 2020-09-18T16:30:38.417 回答