【发布时间】:2020-02-27 05:24:20
【问题描述】:
我创建了一个脚本,可以从域连接的计算机中提取所有已安装的软件。问题是无论我对格式表和选择对象做什么,它似乎永远不会显示计算机名称,我需要弄清楚什么计算机有什么。该命令从 Get-ADComputer 脚本中获取计算机输入,并为列表中的每个名称运行该命令。
我尝试过诸如计算机名、系统名、pscomputername 和 ADcomputer 之类的属性
Get-Content -Path \\server\C$\folder\Computers.txt | ForEach-Object {Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*} | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate, SystemName | format-table SystemName, DisplayName, DisplayVersion, InstallDate -auto | Format-List -Property * | Out-File -FilePath \\server\C$\Folder\Computers11.txt
每次显示计算机名为空白时
【问题讨论】:
-
在您的
ForEach-Object脚本块中,构建一个包含您想要的内容的 PSCustomObject。这样你就可以跳过Select-Object,以及非常愚蠢和破坏性的Format-*cmdlet。