今天我发现了NTFS系统的一种奇怪的魔法:每个文件都可以有多个数据流。基本上,你可以有一个大小为0b的文件a.txt,但是可以在该文件的另一个数据流中隐藏任意数量的字节。这纯粹是NTFS相关的魔法,我不认为有任何高贵的理由来保留这些流。你可以使用Sysinternals的streams
工具寻找NTFS流。这将向你展示,基本上所有那些讨厌的thumbs.db文件都带有额外的数据流。
好了,现在我已经看到这种魔法在Windows NT4系统上运行过,在文件上添加流、复制、删除(使用上述实用程序的帮助),但我现在正在尝试在我的Win XP系统上进行此操作,虽然我可以检测到现有的流,但我无法显示它们的内容,也无法创建新的流或做其他任何事情,当我使用filename:streamname
语法时。
我得到了这个错误:
The filename, directory name, or volume label syntax is incorrect.
例如: 从streams工具获得的输出:
c:\DOWNLOADS>streams.exe -s .
Streams v1.56 - Enumerate alternate NTFS data streams
Copyright (C) 1999-2007 Mark Russinovich
Sysinternals - www.sysinternals.com
c:\DOWNLOADS\1013.pdf:
:Zone.Identifier:$DATA 46
c:\DOWNLOADS>type 1013.pdf:Zone.Identifier
The filename, directory name, or volume label syntax is incorrect.
为什么我无法显示备用数据流的内容?
查看微软关于“如何使用NTFS备用数据流”的文档,我可以看到这适用于我的操作系统,尽管他们提到这些流将不会在未来得到支持。有人能够解释一下吗?
copy
程序来支持从和到备用流的数据复制吗? - Peter Perháč