欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

lua官方例程--像读取全局变量一样读取环境变量

程序员文章站 2022-03-01 21:03:51
...
-- read environment variables as if they were global variables

local f=function (t,i) return os.getenv(i) end
setmetatable(getfenv(),{__index=f})

-- an example
print(a,USER,PATH)

1、os.getenv(variable)

        返回环境变量的值,如果不存在,返回nil。

2、setmetatable(table,metatable)

        对指定 table 设置元表(metatable),如果元表(metatable)中存在 __metatable 键值,setmetatable 会失败。

3、setfenv(f, table)

        给f设置一个环境。

      getfenv(f):

      f可以为函数或调用栈的级别,级别1[默认]为当前的函数,级别0或其它值将返回全局环境_G

相关标签: lua实例 lua