如何通过PowerShell将指定REG_SZ注册表项导出为CSV文件
PowerShell导出指定注册表项到CSV的修正方案
你的代码已经完成了注册表值的获取,但缺少将键名和对应值映射到CSV列的步骤。以下是修正后的完整代码:
# 定义注册表路径 $FindRegPath = "HKLM:\SOFTWARE\Intel\PSIS\PSIS_DECODER" # 获取指定两个REG_SZ类型的键值 $Value1 = Get-ItemPropertyValue -Path $FindRegPath -Name "Key 1" $Value2 = Get-ItemPropertyValue -Path $FindRegPath -Name "Key 2" # 定义输出CSV路径 $outfile = "C:\temp\Outfile.csv" # 构造包含键名和值的对象集合,然后导出到CSV @( [PSCustomObject]@{ Name = "Key 1" Value = $Value1 }, [PSCustomObject]@{ Name = "Key 2" Value = $Value2 } ) | Export-Csv -Path $outfile -NoTypeInformation -Encoding UTF8
关键修正说明:
- 用
[PSCustomObject]构造每个条目,明确指定Name(键名)和Value(对应值)两个属性,和CSV的列一一对应 - 用数组符号
@()将两个对象包裹,确保导出时是多行数据而非单个对象 - 添加
-NoTypeInformation参数,避免CSV文件开头生成PowerShell类型信息注释 - 可选添加
-Encoding UTF8参数,保证CSV文件的编码兼容性
额外提示:
如果需要处理键不存在的情况,可以添加错误捕获逻辑,比如:
$Value1 = try { Get-ItemPropertyValue -Path $FindRegPath -Name "Key 1" -ErrorAction Stop } catch { $null }
内容的提问来源于stack exchange,提问作者Azure_CloudServices
相关产品推荐
相关产品推荐

