【问题标题】:How can I pass the arguments to the lua file through the lua CLI如何通过 lua CLI 将参数传递给 lua 文件
【发布时间】:2012-03-19 21:25:07
【问题描述】:
我有一个接收 lua 命令的 LUA CLI,
类似的东西
(lua)> #
现在这里为了执行lua文件我运行命令
(lua)> #dofile("a.lua")
我想要一个命令来执行文件并传递一个参数给它。
现在我想将一个参数传递给“a.lua”文件,该文件将接受这个参数并调用另一个lua文件,并根据参数调用第二个lua文件,所以,我需要解析这个论据。
拜托,谁能告诉我将在 a.lua 中使用的解析命令。我的意思是用来解析它的函数是什么。
请有人告诉我如何将参数传递给这个文件“a.lua”。
【问题讨论】:
标签:
lua
command-line-interface
【解决方案1】:
现在这里为了执行lua文件我运行命令
这通常不是你执行 Lua 文件的方式。通常,如果您有一些 Lua 脚本,您可以使用以下命令执行它:lua a.lua。你不用输入lua 然后使用那里的接口来执行它。
使用适当的命令行来执行脚本,您可以将字符串参数传递给文件:lua a.lua someParam "Param with spaces"。然后a.lua 脚本可以使用标准 Lua ... 机制获取这些参数:
local params = {...}
params[1] -- first parameter, if any.
params[2] -- second parameter, if any.
#params -- number of parameters.
但是,如果您坚持尝试使用调用解释器的方法(使用lua)并一一输入命令来执行此操作,那么您可以这样做:
> GlobalVariable = assert(loadfile(`a.lua`))
> GlobalVariable(--[[Insert parameters here]])
但是,如果您不想分两步完成,使用中间全局变量,您可以一步完成:
> assert(loadfile(`a.lua`))(--[[Insert parameters here]])