在Lua中同步执行命令。

我想在 Lua 中使用系统命令,并在命令执行结束时获取输出的数据,即使该命令可能需要几分钟才能结束。

显然,popen 在 lua 进程之外执行命令。

有没有人有解决方法?

r = popen('command','r')
for line in r:lines() do
  print(line)
end

原文链接 https://stackoverflow.com/questions/4612815

点赞
stackoverflow用户107090
stackoverflow用户107090

如果命令使用缓冲输出(默认情况下),那么你无法做任何事情。有些命令(例如cat -u)具有使用非缓冲输出的选项,但它们很少见。

2011-01-06 11:06:51