powershell哈希表问题
发布时间:2020-12-15 08:39:09 所属栏目:Java 来源:网络整理
导读:我试图读取一个配置文件,其中包含一些键值对,如下所示: age = 7server = serverdestination = naspublicserver 这是我用来读取文件的脚本: gc "keyval.txt" | % -begin {$h=@{}} -process { $k = [regex]::split($_,'='); if(($k[0].CompareTo("")
我试图读取一个配置文件,其中包含一些键值对,如下所示:
age = 7 server = server destination = naspublicserver 这是我用来读取文件的脚本: gc "keyval.txt" | % -begin {$h=@{}} -process { $k = [regex]::split($_,'='); if(($k[0].CompareTo("") -ne 0) -and ($k[0].StartsWith("[") -ne $True)) { $h.Add($k[0],$k[1]) } } $h #THIS PRINTS THE KEYS and VALUES $h.get_item("server") #THIS DOESN'T DO ANYTHING $h.server #THIS DOESNT DO ANYTHING AS WELL 我了解到在PowerShell中有一些奇怪的哈希表,但是无法避开棘手的方法.请帮我解决这个问题. 解决方法
如果您不想修改文件:
$re = 's*(w+)s*=s*(S+)' Get-Content tempfoo.txt | Foreach {$ht=@{}} {if ($_ -match $re) {$ht.($matches[1]) = $matches[2]}} {$ht} Name Value ---- ----- age 7 server server destination naspublicserver (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |