【问题标题】:How to display computer name in the output of software list code如何在软件列表代码的输出中显示计算机名称
【发布时间】: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。

标签: powershell powershell-2.0


【解决方案1】:

您在寻找 $env:computername 吗?

$env: 本质上是一个可以让您访问所有环境变量的驱动器,而 computername 是一个显示您当前计算机名称的驱动器。

你可以用

列出所有的
Get-Item -Path Env:

【讨论】:

  • 我已经尝试了 $env:computername,它现在将我的计算机名显示为列的标题,而不是列表的其余部分。我正在尝试列出列表中出现的每个软件的计算机名称。
  • 是的。对于它提取的每个软件
猜你喜欢
  • 1970-01-01
  • 2021-08-03
  • 2016-04-13
  • 1970-01-01
  • 1970-01-01
  • 2023-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多