我刚刚打开了 Windows 10.0.15063 上的命令帮助ATTRIB
,发现有一些我不知道的新属性。
>attrib /?
Displays or changes file attributes.
ATTRIB [+R | -R] [+A | -A] [+S | -S] [+H | -H] [+O | -O] [+I | -I] [+P | -P] [+U | -U]
[drive:][path][filename] [/S [/D]] [/L]
+ Sets an attribute.
- Clears an attribute.
R Read-only file attribute.
A Archive file attribute.
S System file attribute.
H Hidden file attribute.
O Offline attribute.
I Not content indexed file attribute.
X No scrub file attribute.
V Integrity attribute.
P Pinned attribute.
U Unpinned attribute.
[drive:][path][filename]
Specifies a file or files for attrib to process.
/S Processes matching files in the current folder
and all subfolders.
/D Processes folders as well.
/L Work on the attributes of the Symbolic Link versus
the target of the Symbolic Link
(具体来说,X、V、P、U)
我可以+X
通过ATTRIB
命令进行设置,即使它没有被列为可修改。
我不知道它们有什么用处。而且我没有在 Google 上找到任何有用的东西,除了列表,这些列表并不比帮助本身有用多少。甚至微软自己的帮助也没有帮助。
答案1
实际上,还有更多新属性C:\Program Files (x86)\Windows Kits\10\Include\10.0.16299.0\um\winnt.h
:
FILE_ATTRIBUTE_UNPINNED = 0x00100000
FILE_ATTRIBUTE_PINNED = 0x00080000
FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS = 0x00400000
只有最后一个记录在https://msdn.microsoft.com/en-us/library/windows/desktop/gg258117%28v=vs.85%29.aspx
基于https://techcommunity.microsoft.com/t5/OneDrive-for-Business/Files-on-demand-difference-in-locally-available-and-always/mp/118203#M2781我猜想“固定”标志用于防止在磁盘空间不足时从本地存储中清除文件。另一方面,“取消固定”属性似乎用于指示您想要力量该文件未存储在本地。
我目前正在研究新的“OneDrive Files On Demand”功能如何使用这些属性(https://support.office.com/en-us/article/Learn-about-OneDrive-Files-On-Demand-0E6860D3-D9F3-4971-B321-7092438FB38E)。
答案2
有一些我不知道的新属性。
V
完整性属性。
这与检查文件损坏有关:
完整性流 - ReFS 使用元数据和(可选)文件数据的校验和,从而使 ReFS 能够可靠地检测损坏。
文件属性完整性流
目录或用户数据流配置了完整性(仅在 ReFS 卷上受支持)。它不包含在普通目录列表中。如果文件被重命名,完整性设置将保留在文件中。如果复制了文件,则如果源文件或目标目录已设置完整性,则目标文件将具有完整性设置。
来源文件属性常量
X
无清理文件属性。
这与错误纠正有关:
主动纠错 - 除了在读写之前验证数据之外,ReFS 还引入了数据完整性扫描程序,即清理器。此清理器会定期扫描卷,识别潜在损坏并主动触发损坏数据的修复。
文件属性_无_SCRUB_DATA
后台数据完整性扫描器(又称为清理器)不会读取用户数据流。在目录上设置时,它仅提供继承。此标志仅在存储空间和 ReFS 卷上受支持。它不包含在普通目录列表中。
来源文件属性常量
P
固定属性。
这表明该文件是稀疏文件:
稀疏文件具有一个属性,该属性使 I/O 子系统仅分配有意义的(非零)数据。非零数据分配在磁盘上,而无意义的数据(由零组成的大串数据)则不分配。读取稀疏文件时,分配的数据将按存储方式返回;默认情况下,未分配的数据将以零形式返回。
NTFS 释放稀疏数据流,仅保留已分配的其他数据。当程序访问稀疏文件时,文件系统将分配的数据作为实际数据,将释放的数据作为零。
NTFS 包括对压缩和未压缩文件的完整稀疏文件支持。NTFS 通过返回已分配数据和稀疏数据来处理对稀疏文件的读取操作。可以将稀疏文件读取为已分配数据和一系列数据,而无需检索整个数据集,尽管 NTFS 默认返回整个数据集。
通过设置稀疏文件属性,文件系统可以从文件中的任何位置释放数据,并且当应用程序调用时,按范围产生零数据,而不是存储和返回实际数据。文件系统应用程序编程接口 (API) 允许将文件复制或备份为实际位和稀疏流范围。最终结果是高效的文件系统存储和访问。下图显示了在设置和不设置稀疏文件属性的情况下数据存储的方式。
文件属性_稀疏_文件
稀疏文件。
来源文件属性常量
进一步阅读
- Windows CMD 命令行的 AZ 索引
- Windows CMD 命令的分类列表
- 属性- 显示或更改文件属性。
答案3
能够使用 NTFS 设置 NO SCRUB(X) 是正确的。NTFS
会检查可读性并在需要时进行恢复。
由于没有校验和,NTFS 不会检查数据是否正确。
这仅在冗余存储空间上有意义。
这是信息来源之一。
(见幻灯片#30)
P 不是稀疏属性。
因为 Powershell 中的“Get-Item | Format-List Attributes”在稀疏属性时会打印“Sparse”。
但 Pinned 属性将是十六进制值,而不是有意义的字符串。
抱歉,我不知道 pinnd/unpinned 是什么。