1

我是使用 Windows 命令提示符的新手,如果这是一个简单的问题,我深表歉意。我正在使用 forfiles 生成文件夹及其子目录中所有文件的列表,该列表还包括上次修改的文件的日期和时间。这可以正常工作,但对于某些文件,即使实际文件名不包括此,列表也会在文件名中打印 ~$。例如命令返回:

ExampleFolder1\ExampleFolder2\~$Examplefilename.docx 10/10/2010 10:10

什么时候应该返回

ExampleFolder1\ExampleFolder2\Examplefilename.docx 10/10/2010 10:10

这只发生在打印列表中的某些文件上。

此外,有时运行 forfiles 时打印 ~$ 的文件是文件夹中实际不存在的文件的名称,在某些情况下,它似乎是运行 forfiles 时已打印的文件的副本但修改的时间会有所不同。例如 forfiles 可能会返回:

ExampleFolder1\ExampleFolder2\Examplefilename.docx 10/10/2010 10:10
ExampleFolder1\ExampleFolder2\~$Examplefilename.docx 11/11/2010 20:10

我只是想知道是否有其他人遇到过这个问题?

我唯一的理论可能是它为已删除或剪切并移动到其他地方的文件返回 ~$ 文件名,但我在命令提示符下的知识有限,所以我完全不确定。

这是我用来打印文件夹(不包括目录)的所有文件和子目录文件列表的代码:

FORFILES /s /c "cmd /c if @isdir==FALSE echo @path @fdate @fdate"

理想情况下,我只想知道打印此类文件的原因。谢谢你的帮助

4

1 回答 1

2

文件名中包含的 Microsoft Office 文件~$称为“所有者”文件。这些文件是 Office 文件锁定机制的一部分,包含打开文件的用户的帐户名。这些文件通常隐藏为“操作系统文件”,如果 Office 应用程序未正确关闭,有时会被遗忘。

这是 Microsoft Office 应用程序可以向您显示此消息的方式:

正在使用的文件对话框

您可以通过以下方式在 Windows 资源管理器中显示这些文件:

  1. Windows 7的:

    1. 单击组织
    2. 单击文件夹和搜索选项

    视窗 10:

    1. 单击文件
    2. 单击更改文件夹和搜索选项
  2. 打开文件夹选项对话框

  3. 单击查看选项卡
  4. 选择“显示隐藏的文件、文件夹和驱动器
  5. 取消选中“隐藏受保护的操作系统文件(推荐)

文件夹选项对话框

于 2019-05-24T18:00:03.273 回答