在Lua解释器中获取命令行参数

时间:2012-06-18 16:16:52

标签: lua

如何在Lua中调用函数? 我是Lua的新手,无法找到如何做一些非常简单的事情。我写了一个test.lua并使其可执行。我把它放在里面:

function Double(n)
 return 2*n
end

print(Double(15))

如果我拨打test.lua,则会返回30,确定。

现在我删除print行,并希望能够使用以下内容调用该函数:

test.lua 15

它不起作用。如何在不对第一个参数进行硬编码的情况下从命令行或Lua shell调用该函数?

2 个答案:

答案 0 :(得分:4)

您可以将参数传递给将出现在arg global中的脚本。

e.g。

function Double(n)
 return 2*n
end

print(Double(arg[1]))

http://www.lua.org/pil/1.4.html

答案 1 :(得分:1)

您还可以使用...获取命令行参数:

local input = ...
if input then
  local Double
  Double = function(input)
    return 2 * input
  end
  return print(Double(input))
end