报告删除到 DEL 批处理文件中的文件失败

RpT*_*rod 2 batch-file echo delete-file

如何创建一个 DEL 命令未能正确执行的报告文件?

我原以为你会这样做:

DEL FILENAME.TXT ECHO "FILENAME.TXT" >> REPORT.TXT
Run Code Online (Sandbox Code Playgroud)

但它所做的只是创建一个空的报告文件,无论它是否找到 FILENAME.TXT。我想创建一个报告文件,如果它无法删除 FILENAME.TXT,无论出于何种原因,弹出的消息都会转储到 REPORT.TXT 中。

有任何想法吗?

Exp*_*r09 5

仅供参考。如果发生严重错误,DEL 命令确实会返回错误代码,但是它的行为远远超出了我们的直觉,即人们会简单地认为错误代码根本不起作用。

这是我在 Windows 7 的 DEL 命令中测试过的:

  • 成功删除所有文件:0(当然)
  • 删除了一些文件,丢失了一些文件:0(直觉期望为 1)
  • 由于没有权限或只读介质而导致删除失败:0(直觉期望?1)
  • 不存在的驱动器或驱动器未准备好(例如 CD-ROM 驱动器上没有 CD):1(是的,你明白了,但我会期待更高的错误代码)
  • 无效路径:1(我也期待更高的错误代码)

并且,如果您为 DEL 命令指定文件列表,其中至少有一个文件符合上述最后两种错误,那么列表中的任何文件都不会被删除