gpt4 book ai didi

powershell - 从 2 个哈希表中选择重复的键值

转载 作者:行者123 更新时间:2023-12-04 01:03:25 26 4
gpt4 key购买 nike

我的任务是将正在运行的服务与 Windows 中的进程相关联。

$a = Get-CimInstance -ClassName Win32_Service | Where-Object {$_.State -match "Running"} | Select-Object -Property ProcessId,Name
$b = Get-CimInstance -ClassName Win32_Process | Select-Object -Property ProcessId,Name
$d = @{$b.ProcessId=$b.Name}
$c = @{$a.ProcessId=$a.Name}

所以,我得到了两个哈希表,现在我想制作新的哈希表,它将由 $a.Name$b.Name 组成,但是从这些值,其中 $a.processid=$b.processid。或者可能有人可以建议如何在将它们放入哈希表之前组合值。谢谢

最佳答案

我试过了,大多数情况下我的机器上都有 svchost.exe 用于服务——这是预期的吗?

$Services = Get-CimInstance -ClassName Win32_Service |
Where-Object {$_.State -eq "Running"} |
Select-Object -Property ProcessId,Name

$Processes = Get-CimInstance -ClassName Win32_Process |
Select-Object -Property ProcessId,Name

$Combined = foreach ($Service in $Services) {
$ProcessName = ($Processes.Where{$_.ProcessId -eq $Service.ProcessId}).Name
if($ProcessName) {
New-Object -TypeName PSCustomObject -Property @{
Service = $Service.Name
Process = $ProcessName
}
}
}

$Combined

关于powershell - 从 2 个哈希表中选择重复的键值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67345452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com