如何处理由于“文件正在使用”而导致的 Lua 中的覆盖错误

我正在运行一个简单的 lua 拷贝函数,它会覆盖一个文件:

function copyFile(old, new)
  local i = io.open(old, "r")
  local o = io.open(new, "w")
  if i then
    o:write(i:read("*a"))
    o:close()
    i:close()
  end
end

有时,“new”路径会“在使用”并导致 VFS 覆盖问题,并阻止我的代码执行。

我该如何添加一个错误处理程序:

1. 让代码在需要时继续执行;

2. 推迟 copyFile 函数的执行,让“新”路径不再被使用

PS 我不是专业的程序员,我只了解 Lua.. 我更像一个修改器。

点赞