arrays - 删除NodeMCU Lua中除数组之外的所有文件
问题描述
删除除数组中文件外的所有文件
files = {"init.lua", "client.lua", "config.htm", "server.lua", "update.lua"}
解决方案
如文档中所述,您可以使用file.list()
.
这将返回一个地图file name => file size
;所以文件名是表键,您可以使用它。
请记住:
- Lua 中的表索引速度可以接受
- 可以通过将值设置为来删除键值对
nil
所以我们可以这样做:
local whitelist = {"init.lua", "client.lua", "config.htm", "server.lua", "update.lua"}
local files = file.list()
-- Remove files found in the whitelist
for _, filename in ipairs(whitelist) do
files[filename] = nil
end
-- Delete the remaining files
for filename in pairs(files) do
file.remove(filename)
end
推荐阅读
- ruby-on-rails - Rails:无法使用 MongoMapper 创建新文档
- http - 使用不同文件的 HTTP 服务器基准测试
- .net - .net Core 2.1.x EntityFramework | 找不到 DatabaseGeneratedAttribute 注释
- java - 如何检查 server.xml 中的 tomcat 数据源连接池
- ios - Flutter Dart App RangeError 仅在特定设备上(不是模拟器)
- node.js - Docker 云自动构建几乎立即失败
- javascript - 将一个字符串连接到一个承诺
- tfs-2015 - TFS 2015 构建错误
- android - 是否可以使用 Espresso 来测试带有 AndroidForWork 工作配置文件的应用程序
- php - Laravel artisan route:cache throw error Constant XXX already defined