function filesubdir(destination) for file in lfs.dir(destination) do if file ~= "." and file ~= ".." then local g = destination..'/'..file local attrg = lfs.attributes (g) if attrg == nil then error("file "..g.." is not accessible") elseif attrg.mode == "directory" then filesubdir(g) readfulldir = readfulldir.."{\"dir\",\""..file.."\","..attrg.size..",\""..lfs.currentdir().."/"..string.sub(destination,3).."\",\"\",\"\"},\r\n" elseif attrf == nil then readfulldir = readfulldir.."{\"file\",\""..file.."\","..attrg.size..",\""..lfs.currentdir().."/"..string.sub(destination,3).."\",\"\",\"\"},\r\n" end end collectgarbage() end end function filefulldir(destination) readfulldir = "" local cwd = lfs.currentdir() lfs.chdir(destination) filesubdir(".") lfs.chdir(cwd) local fnc = loadstring("fulldir = nil") fnc() fnc = loadstring("fulldir = {"..readfulldir.."}") fnc() end