Lua和os.execute返回值。

我正在编写一个 Lua 脚本,需要执行两个 shell 命令,两个命令都会不断地使用 ^C 结束并打印信息。

这意味着使用 os.execute 是无用的,因为它会等待返回代码,但是返回代码永远不会到来,从而冻结整个脚本。您有任何想法可以让这个工作吗?一个好的解决方案是不要求 os.execute 返回任何值,这样它就可以发送命令并继续运行,但我认为这是不可能的。另一个解决方案是多线程,但我一直无法让它正常工作。

我还必须有能力通过使用 ^C 或一个 lua 方法来停止两个无限循环。该脚本正在 iPhone(iOS 5.0.1/ root)上运行,使用 Lua 5.1.4。

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

点赞
stackoverflow用户501459
stackoverflow用户501459

``` os.execute('yourcommand&')

这会在后台运行该命令并立即返回到 Lua 脚本。

如果您想要更复杂的进程控制,您可能需要编写原生代码来实现。

2012-05-01 15:08:15