Browse Source

added fs.mounts(), fs.address(path) and fs.type(path) to provide more information about mounted filesystems

pull/1/head
XeonSquared 4 years ago
parent
commit
69eae00ec1
1 changed files with 18 additions and 1 deletions
  1. +18
    -1
      module/fs.lua

+ 18
- 1
module/fs.lua View File

@@ -27,7 +27,7 @@ function fs.resolve(path) -- resolves *path* to a specific filesystem mount and
end

-- generate some simple functions
for k,v in pairs({"makeDirectory","exists","isDirectory","list","lastModified","remove","size","spaceUsed","isReadOnly","getLabel"}) do
for k,v in pairs({"makeDirectory","exists","isDirectory","list","lastModified","remove","size","spaceUsed","spaceTotal","isReadOnly","getLabel"}) do
fs[v] = function(path)
local fsi,path = fs.resolve(path)
return fsmounts[fsi][v](path)
@@ -107,6 +107,23 @@ function fs.mount(path,proxy)
return false, "path is not a directory"
end

function fs.mounts()
local rt = {}
for k,v in pairs(fsmounts) do
rt[#rt+1] = k,v.address or "unknown"
end
return rt
end

function fs.address(path)
local fsi,_ = fs.resolve(path)
return fsmounts[fsi].address
end
function fs.type(path)
local fsi,_ = fs.resolve(path)
return fsmounts[fsi].type
end

fsmounts["/"] = component.proxy(computer.tmpAddress())
fs.makeDirectory("temp")
if computer.getBootAddress then


Loading…
Cancel
Save