]=])
checked={}
for i,v in ipairs(EdcbRecFolderPathList()) do
v=v:match('^[A-Za-z]:\\')
if v and not checked[v:upper()] then
checked[v:upper()]=true
free=nil
f=edcb.io.popen('fsutil volume diskfree '..v)
if f then
--最近のfsutilは数値に桁区切りがつく。さらに最近のものは項目が増えた。
free,total,avail=f:read('*a'):gsub("[%s',.]",''):match(':(%d+).-:(%d+).-:(%d+)')
f:close()
end
ct:Append('
'..v..'
'..(free and
('%.3f GiB (avail: %.3f GiB) / %.3f GiB'):format(free/1024/1024/1024,avail/1024/1024/1024,total/1024/1024/1024) or '不明')..'
\n')
end
end
ct:Append([=[
]=])
ct:Finish()
mg.write(ct:Pop(Response(200,'text/html','utf-8',ct.len)..(ct.gzip and 'Content-Encoding: gzip\r\n' or '')..'\r\n'))