Lua:io.read()不';我不能在长弦上工作

Lua:io.read()不';我不能在长弦上工作,io,lua,Io,Lua,以下命令冻结长度约为2000个字符的字符串: lua -e 'print(io.read())' 知道为什么吗 PS:LuaVersion5.1.5在没有参数的情况下调用时,io.read使用默认格式“*l”,读取下一行。底层缓冲区大小是C的BUFSIZ,似乎您的输入字符串已超过该限制 将其更改为io.read(“*a”)以读取整个输入。最后记得发送EOF。这很可能是底层操作系统中终端IO的限制。它在达到Lua限制之前被强制执行 请尝试在cat>/dev/null中输入一条长线,谢谢!我试过这

以下命令冻结长度约为2000个字符的字符串:

lua -e 'print(io.read())'
知道为什么吗


PS:LuaVersion5.1.5

在没有参数的情况下调用时,
io.read
使用默认格式
“*l”
,读取下一行。底层缓冲区大小是C的
BUFSIZ
,似乎您的输入字符串已超过该限制


将其更改为
io.read(“*a”)
以读取整个输入。最后记得发送
EOF

这很可能是底层操作系统中终端IO的限制。它在达到Lua限制之前被强制执行


请尝试在
cat>/dev/null
中输入一条长线,谢谢!我试过这个,但不幸的是它仍然冻结。我还意识到,该命令只冻结在没有任何空格的字符串上。仅仅一个随机文本就可以很好地工作。例如,当我尝试输入这个字符串时,我从未从lua那里得到任何响应:@ChristianMüller我在我的机器上和上测试了你的示例字符串,两者都工作正常。我猜某处隐藏着一些秘密。你完全正确:输入冻结,就像我的lua脚本一样。多谢各位@ChristianMüller接受这个答案,如果它解决了你的问题。