使用文件和 Windows 注册表清单
借助 AWS Systems Manager Inventory 清单可以搜索和清点 Windows、Linux 及 macOS 操作系统上的文件。您还可以搜索并清点 Windows 注册表。
文件:您可以收集关于文件的元数据信息,包括文件名称、文件创建时间、文件上次修改和访问时间以及文件大小等等。要开始收集文件清单,您需要指定要执行清点的文件路径、用于定义要清点的文件类型的一个或多个模式,以及是否应以递归的方式遍历路径。Systems Manager 将清点与模式相匹配的指定路径中的文件的所有文件元数据。清单文件使用以下参数输入。
{ "Path": string, "Pattern": array[string], "Recursive": true, "DirScanLimit" : number // Optional }
-
路径:您要清点文件的目录路径。对于 Windows,您可以使用 %PROGRAMFILES% 等环境变量,前提是该变量要映射到单个目录路径。例如,如果您使用映射到多个目录路径的 %PATH%,则清单会引发错误。
-
模式:确定文件的一组模式。
-
递归:指示清单是否应以递归方式遍历目录的布尔值。
-
DirScanLimit:指定要扫描多少目录的可选值。使用此参数可以将对托管式节点的性能影响降至最低。默认情况下,清单扫描最多 5000 个目录。
注意
清单在所有指定路径中收集最多 500 个文件的元数据。
下面是一些在执行文件清单时如何指定参数的示例。
-
在 Linux 和 macOS 上,将收集
/home/ec2-user
目录(不包括所有子目录)中的 .sh 文件的元数据。[{"Path":"/home/ec2-user","Pattern":["
*
.sh", "*
.sh"],"Recursive":false}] -
在 Windows 上,会以递归方式收集程序文件夹 (包括子目录) 中的所有“.exe”文件的元数据。
[{"Path":"C:\Program Files","Pattern":["*.exe"],"Recursive":true}]
-
在 Windows 上,会收集指定日志模式的元数据。
[{"Path":"C:\ProgramData\Amazon","Pattern":["*amazon*.log"],"Recursive":true}]
-
在执行递归集合时会限制目录计数。
[{"Path":"C:\Users","Pattern":["*.ps1"],"Recursive":true, "DirScanLimit": 1000}]
Windows 注册表:您可以收集 Windows 注册表项和值。您可以选择一个键路径并以递归方式收集所有键和值。您还可以收集特定路径的特定注册表项及其值。清单会收集键路径、名称、类型和值。
{ "Path": string, "Recursive": true, "ValueNames": array[string] // optional }
-
路径:注册表项的路径。
-
递归:指示清单是否应以递归方式遍历注册表路径的布尔值。
-
ValueNames:执行注册表项的清单的一组值名称。如果使用此参数,Systems Manager 仅将清点指定路径的指定值名称。
注意
清单针对所有指定路径收集最多 250 个注册表项值。
下面是一些在执行 Windows 注册表清单时如何指定参数的示例。
-
以递归方式针对特定路径收集所有键和值。
[{"Path":"HKEY_LOCAL_MACHINE\SOFTWARE\Amazon","Recursive": true}]
-
针对特定路径收集所有键和值(已关闭递归搜索)。
[{"Path":"HKEY_LOCAL_MACHINE\SOFTWARE\Intel\PSIS\PSIS_DECODER", "Recursive": false}]
-
使用
ValueNames
选项收集特定键。{"Path":"HKEY_LOCAL_MACHINE\SOFTWARE\Amazon\MachineImage","ValueNames":["AMIName"]}