如何将 powershell 输入显示为输出的一部分

如何将 powershell 输入显示为输出的一部分

我正在尝试获取我域中选定计算机的操作系统版本。我创建了一个 powershell 命令来执行此操作,但输出中缺少计算机名称。

这是命令
Get-ADComputer -Filter {name -Like "test"} | select "name" | foreach {$_.name} {Get-WmiObject -Class Win32_OperatingSystem -ComputerName $_.name} | Select-Object Description, Caption,SevicePackMajorVersion | out-gridview

我尝试添加其他选择对象,但它们都是空白的。我认为这是因为这个 wmiobject 根本不包含机器名称。

所以我的问题是,当我用管道输入名称时,$_.name它是否也可以成为输出的一部分。我尝试($_.name)在 select-object 命令中使用变体,但无济于事。

答案1

使用时,Get-WmiObject -Class Win32_OperatingSystem您可以使用命令查看可用属性的完整列表Get-WmiObject -Class Win32_OperatingSystem | select-object *。执行此操作将为您提供属性和值的表格。可能对您有帮助的属性是属性PSComputerName

因此,类似这样的内容应该包含您想要的详细信息。

Get-WmiObject -Class Win32_OperatingSystem -ComputerName . | select-object PSComputerName,Description,Caption,SevicePackMajorVersion

相关内容