如何删除“不存在”的文件

如何删除“不存在”的文件

文件存在于 Synology 5-Bay NAS 上。

文件名似乎有误,包含两个无效字符以及一些已更改的其他字符。(我的原始文件在其他地方)。

我只是想将它完全删除,我有它的副本,但事实上损坏的副本“存在”正在扰乱我的一个 Syncback 作业。(无法复制、移动、删除、重命名。)

我等了一天才重试,问题仍然存在。但我不太确定问题何时开始的。

附件是两张屏幕截图,一张来自 Windows 资源管理器,另一张来自通过 SSH 进入 NAS 并尝试以此方式删除它。

(注意:文件路径已被模糊处理,但远没有达到 Windows 的限制,路径为 127 个字符,文件名为 37 个字符,共计 165 个字符。)

Windows 资源管理器尝试: 未找到要删除的项目

SSH 尝试: ssh 没有那个文件或目录

答案1

您可以尝试以下几件事(假设 NAS 运行的是某种 Gnu/Linux):

  • rm Kinetix*.L5X
  • find -name "Kinetix*.L5X" -delete,假设您find支持-delete,如果它不使用这个,则改为:find -name "Kinetix*.L5X" -exec rm -i '{}'
  • 使用inode删除,首先获取inode:

    ls -i Kinetix*.L5X
    

    这将返回类似于NNNNNNNN FILENAMENs 是 inode 编号的内容。现在,将该数字传递给find

    find . -inum [inode-number] -exec rm -i '{}' \;
    

相关内容