You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将PowerShell文件中的Here-String解析为哈希表?

PowerShell 从Here-String或文件生成哈希表

直接用Here-String转哈希表

直接定义Here-String,再通过ConvertFrom-StringData转成哈希表,一步到位:

# 定义Here-String,每行是键值对
$hereString = @"
Key1 = Value1
Key2 = Value2
Key3 = 带空格的Value3
"@

# 转换为哈希表
$hashTable = $hereString | ConvertFrom-StringData

# 输出验证结果
$hashTable

运行后就能得到结构正确的哈希表,键值对一一对应。

从文件读取并转哈希表

如果键值对存在hash.txt文件里(文件内容就是纯键 = 值的行,不用加Here-String的@"和"),这么处理:

最简单的方式

用Get-Content的-Raw参数把整个文件读成一个字符串,和直接定义的Here-String效果一样,直接转:

$fileHash = Get-Content -Path "hash.txt" -Raw | ConvertFrom-StringData

带过滤的方式(处理空行/注释)

如果文件里有空行或者以#开头的注释,先过滤再转:

# 读取文件,过滤空行和注释行,再合并成单字符串
$cleanContent = Get-Content -Path "hash.txt" | Where-Object { $_ -match '^\s*[^#\s]' } | Out-String
$fileHash = $cleanContent | ConvertFrom-StringData

注意:文件里的键值对格式要和Here-String里的一致,值里有特殊字符的话,用反引号`转义就行。

内容的提问来源于stack exchange,提问作者Nicholas Saunders

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 12:35:22