将bash输出分配给.lua脚本中的变量

时间:2015-03-26 16:08:03

标签: lua

我想将bash命令的输出分配给.lua脚本中的变量。有可能吗?

例如,类似于:

var = `ps uax | grep myprocess`

1 个答案:

答案 0 :(得分:2)

是的,您需要使用io.popen

  

io.popen(prog [,mode])

     

在一个单独的进程中启动程序prog并返回一个文件句柄,您可以使用该句柄从该程序读取数据(如果mode是" r",默认值)或将数据写入此程序(如果模式是" w")。

     

此功能取决于系统,并非在所有平台上都可用。

另见How to execute an external command?

  

io.popen调用一个命令但返回一个文件对象,这样你就可以读取命令的输出,如果第二个参数是' r',你也可以将输入传递给一个带有秒的命令'w'的论点。不幸的是,你没有获得io.popen2,而且你没有得到返回码。