Lua 如何使require()采用文件的直接路径

Lua 如何使require()采用文件的直接路径,lua,luvit,Lua,Luvit,所以我有下面的代码,问题是当我循环遍历数组中的每个文件并尝试要求文件路径时,它会给我一个错误,即找不到模块 local Commands = {} function getCommands() local readdir = fs.readdir local readdirRecursive = require('luvit-walk').readdirRecursive readdirRecursive('./Desktop/Discord/ArtifexBot/Di

所以我有下面的代码,问题是当我循环遍历数组中的每个文件并尝试要求文件路径时,它会给我一个错误,即找不到模块

local Commands = {}

function getCommands()
    local readdir = fs.readdir
    local readdirRecursive = require('luvit-walk').readdirRecursive
    readdirRecursive('./Desktop/Discord/ArtifexBot/Discordia/resources/commands/', function(k, files) 
        for i,v in pairs(files) do
            if v:match(".lua") and not v:match("commands.lua") then
                local cmd = v:match("([^/]-)%..-$")
                fs.readlink(v,function(err,thing)
                    print(err,thing)
                end)
                Commands[cmd] = require(v)
            end
        end
    end)
end
getCommands()
递归函数可以工作,文件只是路径的字符串。但是经过研究,require()需要相对路径,而不是直接路径。所以我想我需要对fs做些什么,使文件路径成为相对路径?我到处都找不到答案


谢谢

require
根本没有路径。标准加载器只是按照其算法,以一系列模式使用您提供的字符串

您想要的是在磁盘上加载并执行给定的Lua脚本。这不是拼写的
require
;拼写为
dofile