如何在lua中启动/显示文件,如批处理命令" start"?

时间:2016-12-07 00:16:34

标签: batch-file lua command-prompt

我已经研究过lua中的打开/启动文件,但是每篇文章都给了我dofile()这样的函数来返回/运行文件状态/内容,而不是实际打开/启动文件。在我的场景中,我有一个.hta文件,我试图通过lua开始,我在技术上想知道的是,如果lua有一个类似批处理命令的函数" start",它启动一个文件,如果没有任何方法可以从lua文件向控制台发送命令?如果有人能帮助我,我会非常感激。

1 个答案:

答案 0 :(得分:3)

您要找的是os.execute()。它允许您在操作系统shell中运行命令:

local code = os.execute("ls -la")
if code ~= 0 then
    print("Something when wrong while running command")
end

如果您还想捕获已执行命令的输出并在Lua代码中使用它,您可以使用io.popen()

local f = assert(io.popen("ls -la", 'r'))
local output = assert(f:read('*a'))
f:close()
print(output)

请注意,io.popen()并非在所有系统上都可用。