跳到主要内容

~/posts · 2026.11.03

批量删除后,把失败的文件留下来

批量操作保留逐项结果,重试只处理失败项,扫描游离文件时也查一下记录和任务的引用。

1 分钟 devshan

手机批量删除时,部分文件失败也会清空全部选择;桌面则遇到第一个错误就停,后面的文件没了结果。我选了十个文件,想知道哪几个删掉了、哪几个需要再试,界面却只给一句“操作失败”。

删除、复制和移动现在都逐项记录结果。成功项从选择里移除,失败项留着,重试只处理这部分。尤其复制和移动,重复提交成功项可能多出文件,或者再也找不到原位置。

请求前拦住把目录移进自身及子目录的操作,确认框写清数量和范围,忙碌时也会挡住连点。

有次删除成功,随后刷新失败,缓存又把旧文件放回列表。我把已确认的操作结果先应用到本地,再刷新远端,失败时保留这份结果。

游离文件扫描还得查引用

普通目录里没有的对象,可能仍被发送记录或传输任务使用。扫描时我把这些引用也算进来,引用读取失败就停止;真正删除前再复核一次,防止旧扫描结果删到刚被收养的内容。

缺块和无法解密的对象分别处理。能收养的导回目录,暂时读不出的允许备份原始密文字节,下载报错时也保留具体原因。

我用一成功一失败的批量场景检查结果和重试 ID,再比较系统空间下载前后的字节,确认记录和任务持有的对象都还在。