我正在寻找一个应用程序,它可以监视我的 C:(系统)驱动器并找到哪个程序正在该驱动器上创建一个文件夹,该文件夹具有相当通用的名称TEMP1\
。
我不介意它是否也可以挂钩文件的创建 - 因为还创建了几个文件(很可能来自另一个进程)。Google 对我没有帮助,因为这些文件的名称也有点通用(不像TEMP1
- dvmaccounts.ini
和dvmexp.idx
)。
问题是每次我删除它们时,它们都会在启动时重新创建,因此我正在搜索的实用程序必须在启动时启动并且启动速度也很快。它也应该非常聪明,因为我的 C: 驱动器很大。
我创建了一个指向我的保管箱目录中的文件的硬链接 - 该链接是在一个文件夹中创建的,该文件需要在该文件夹中被我用来编辑它的程序访问 -
mklink /h path_to_hard_link C:\dropbox\git\repo\existing_file
Run Code Online (Sandbox Code Playgroud)
我开始使用硬链接。在某些时候,我意识到更改不会传播到 repo\ 中的文件 - 文件大小、修改日期,什么都没有 - 甚至不是内容。
我究竟做错了什么 ?
编辑:是否可能依赖于程序?我的意思是我用于这些文件的编辑器确实编辑它们 - 但只编辑硬链接。链接的文件未被修改。此外,此编辑器似乎无法跟踪符号链接
EDIT2:根据surfasb链接的文章:
由于硬链接是文件的目录条目,因此应用程序可以使用其任何硬链接来修改文件。使用任何其他硬链接的应用程序可以检测到更改。
这意味着当使用适当的编辑器直接打开原始文件时必须包含修改 - 不仅仅是通过其硬链接 - 对吗?
但是,只有当用户使用硬链接访问文件时,才会更新硬链接的目录条目。例如,如果用户使用硬链接打开和修改文件,并且原始文件的大小发生变化,则用于访问该文件的硬链接也会显示新的大小。
如果我正确理解了这个可悲的英语样本,这意味着我可以有 69 个硬链接(实际上最多 1023 个)到同一个文件,显示同一个文件的不同大小?!
编辑 3:根据 surfasb 我确实理解这一点 - 文件系统的限制。无论如何 - 奇怪的事情 -情况并非总是如此- 有时属性的更改会立即返回到原始文件中 - 当有更改时 - 我现在真正担心的是我正在使用的至少一个程序似乎没有编辑链接的文件,但只有硬链接。可能的 ?
dir /a
没有透露太多关于硬链接的信息 - 有什么办法可以看到它们吗?