首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Get CIM_Processor返回多个“名称”

Get CIM_Processor返回多个“名称”
EN

Stack Overflow用户
提问于 2022-04-07 16:07:30
回答 1查看 206关注 0票数 0

我正在努力获取域上所有机器的cpu名称。我正在运行以下命令

代码语言:javascript
复制
Get-CimInstance -ComputerName $i.DNSHostName -Class CIM_Processor | Select-Object "PSComputerName", "Name", "NumberOfCores"

我利用它的结果来构建一个自定义对象

代码语言:javascript
复制
 $workstationWithIp = [PSCustomObject]@{
            ComputerName = $i.DNSHostName
            CPU = $workstationObj.Name
            Cores = $workstationObj.NumberOfCores
            IP = $ip
            Memory = $memory
            Uptime = $uptimeHours
            OS = $os.Caption + " " + $os.Version
        }

我的问题是,有些机器有多个处理器,因此“名称”将返回多个结果。所有这些服务器都有相同模型的多个,所以如何才能将结果删除,以便将其作为字符串放入自定义对象中?我使用这些自定义对象来生成CSV,有些对象将具有cpu名称和核心代码,但是具有多个cpu的对象将为csv中的名称和核心计数提供System.Object[]。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-07 16:48:58

正如注释中提到的,从潜在的数组/值集合中选择最多1项的安全方法是通过管道连接到Select-Object -First 1

代码语言:javascript
复制
[PSCustomObject]@{
    ComputerName = $i.DNSHostName
    CPU = $workstationObj.Name |Select-Object -First 1
    Cores = $workstationObj.NumberOfCores |Select-Object -First 1
    IP = $ip
    Memory = $memory
    Uptime = $uptimeHours
    OS = $os.Caption + " " + $os.Version
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71785507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档