gpt4 book ai didi

c - 在 Windows 上删除名为 "NUL"的文件

转载 作者:可可西里 更新时间:2023-11-01 11:59:01 24 4
gpt4 key购买 nike

我在 Windows 7 上运行了一个在 Cygwin 下编译的程序,并传递了“NUL”作为输出文件名。它实际上没有抑制输出,而是在当前目录中创建了一个名为“NUL”的文件。 (显然它需要“/dev/null”,即使在 Windows 上也是如此。)现在我无法删除这个“NUL”文件!

我已经试过了:

  • Windows 资源管理器 - 错误:“无效的 MS-DOS 函数”(是的,这就是它所说的!)
  • 使用“del NUL”的命令提示符 - 错误:“文件名、目录名或卷标签语法不正确。”
  • 删除整个目录 - 与删除文件相同
  • remove() 在 C 程序中 - 也失败

如果不安装完整的 Cygwin 环境并在 Cygwin 下编译 C 程序,我如何才能摆脱这些 NUL 文件(我现在有几个)?

最佳答案

打开命令提示符并使用这些命令首先重命名然后删除 NUL 文件:

C:\> rename \\.\C:\..\NUL. deletefile.txt
C:\> del deletefile.txt

使用 \\.\ 前缀告诉高级文件 I/O 函数将未解析的文件名传递给设备驱动程序 - 这样您就可以访问其他无效的名称。

阅读this article关于 Windows 中的有效文件/路径名和各种保留名称。

关于c - 在 Windows 上删除名为 "NUL"的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17883481/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com