我有一个LUA CLI,它接受lua命令,
像这样的东西 (LUA)GT; #
现在,为了执行lua文件,我运行命令
(LUA)GT; #dofile(“a.lua”)
我想要一个执行文件的命令,并将参数传递给它。
现在我想把一个参数传递给“a.lua”文件,该文件将接受这个参数并再调用一个lua文件,并根据参数调用这个第二个lua文件,所以,我需要解析这个参数。
拜托,有人可以告诉我将在a.lua中使用的解析命令。我的意思是用于解析它的函数是什么。
拜托,有人可以告诉我如何将一个参数传递给这个文件“a.lua”。
答案 0 :(得分:14)
现在,为了执行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]])