gpt4 book ai didi

lua - 将参数解析为 Lua 文件

转载 作者:行者123 更新时间:2023-12-02 00:53:54 25 4
gpt4 key购买 nike

我有文件:data.lua

#! /usr/bin/env lua
local a = {
b = {
c = {
version = "z.y"
},
d = {
version = "z.w"

},
getcversion = function ( self )
print( self.c.version )
end
}
}

现在我需要 'getcversion()' 函数..

a.b:getcversion()

问题是,我需要从外部调用它:

data.lua "a.b:getcversion()"

我尽我所能,但我无法解决这个问题..

有人知道我怎么调用“getcversion()”吗?

提前致谢,问候

最佳答案

您需要在脚本中添加如下内容:

load(arg[1], "<string>", "t", {a = a})()

load 将加载传递的参数 (arg[1]) 的内容,并将返回将在特定环境中执行该代码的函数(提供为 {a = a} 表),因为您需要将局部变量的值传递给您的代码(Lua 5.2+)。

请记住,这将允许调用者将任意 Lua 代码传递给您的脚本,这可能是一个安全问题。

错误处理留给读者作为练习。

关于lua - 将参数解析为 Lua 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55736307/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com