通过 PowerShell 将所有已安装的软件分组到一个单元中

2024-04-05

我让 PowerShell 脚本在我们网络上的所有 PC 上运行,并从 PC 获取信息并将其保存在 CSV 文件中,并每次使用新 PC 作为新行更新文件。

$logData = @(
                           [pscustomobject]@{
                            ComputerName = $ComputerName
                            IPAddress = $env:HostIP
                            User = $User
                            Email = $Email
                            ProgramsInstalled = $ProgramsInstalled
                            }
                           )
                     $logData | Export-Csv $csv -Encoding UTF8 -Append -NoTypeInformation -Force

我使用此代码来获取电脑上安装的所有软件

$ProgramsInstalled = (Get-ItemProperty 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*','HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*') | Select-Object DisplayName

我没有获得所有软件,但当我单独运行它并将其保存在 csv 文件中时,我连续获得了每个软件。

我希望它们分组在一个单元格中


This...

(Get-ItemProperty 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*','HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*') | Select-Object DisplayName

...带回一个数组。

如果您希望将其放在单个列中,那么您必须连接数组结果。

$ProgramsInstalled = Get-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*',
                                            'HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*' | 
Select-Object -Property DisplayName
# Results
<#
DisplayName                                                                  
-----------                                                                  
                                                                             
SAPIEN Document Explorer 2020                                                
GIMP 2.10.14                                                                 
Git version 2.24.0.2                                                         
...
#>


$ProgramsInstalled = ((Get-ItemProperty -Path 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*',
                                              'HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*' | 
Select-Object -Property DisplayName)).DisplayName -join ','
# Results
<#
SAPIEN Document Explorer 2020,GIMP 2.10.14,Git version 2.24.0.2,...
#>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 PowerShell 将所有已安装的软件分组到一个单元中 的相关文章

随机推荐

  • RabbitMQ 启动失败

    RabbitMQ Windows 服务将无法启动 C Program Files x86 RabbitMQ Server rabbitmq server 3 0 4 sbin gt rabbitmq service bat start C
  • OpenAI API 错误 500:“服务器在处理您的请求时出错”、503:“服务不可用”或 504:“网关超时”

    我创建了一个 Python 脚本 该脚本循环遍历文本字符串列表 每个字符串的长度约为 2000 个字符 并总结每个字符串 请参阅下面的响应代码 此提示位于 for 循环内 response openai Completion create
  • 如何右键单击列表框中的项目并在 WPF 上打开菜单

    我有一个包含文件的列表框 我希望能够右键单击并打开 删除 之类的菜单 以便从列表框中删除文件 目前我在右键单击列表框中的项目后具有此功能 private void listBoxFiles PreviewMouseRightButtonDo
  • 先进先出 (FIFO) 库存成本核算

    这是一篇有趣的文章 我发现它对我的项目很有用 基于集合的 Speed Phreakery 先进先出库存 SQL 问题 http www simple talk com sql performance set based speed phre
  • React Router + Axios 拦截器。如何进行重定向?

    我有一个 axios 拦截器 当用户被强制注销 由于令牌过期 时 我想返回我的主页 我不确定如何将反应路由器传递给它 我正在使用 mobx 但不确定这是否能帮助我解决这个问题 export const axiosInstance axios
  • plupload跨域上传200 http错误

    我想使用 plupload 库将文件上传到远程服务器 使用 html5 运行时的 Chrome 32 0 和 IE 10 一切正常 但当我尝试使用 Firefox 27 html5 运行时 或 IE 8 html4 运行时 时 出现错误Er
  • Mozilla 扩展的内容安全策略

    我在 Mozilla 和 Chrome 中都有一个扩展 在我的扩展中我调用了一个远程 JS 文件 为了避免 Chrome 中的 CSP 我将规则添加到 manifest json 中 并且我的文件通过 HTTPS 传输 因此一切都很完美 但
  • 流星中的页面转换?

    我有一个流星移动应用程序结构上在职的 我确实需要将视图与一些页面转换缝合在一起 我看了看铁过渡剂 https github com tmeasday iron transitioner项目但看起来开发已经停止了 最后一次提交是在 6 个月前
  • 连接 MYSQL 表并按两个字段排序?

    我在 MYSQL 中对表进行排序时遇到问题 我的桌子设置如下 订单详细信息 Order ID 运输费 printed 产品详情 ID Order ID SKU 位置 我想选择打印 FALSE 的所有订单 但还要按运费排序 然后按 SKU l
  • 在 Android 中,即使屏幕进入睡眠模式后仍会继续振动

    在我的应用程序中 我通过以下代码启动 VIBRATOR SERVICE long pattern 50 100 1000 Vibrator vibe Vibrator context getSystemService Context VIB
  • KVC setNilValueForKey:建议调用方法而不使用属性访问器

    The KVC文档 http developer apple com library mac documentation Cocoa Conceptual KeyValueCoding Articles AccessorConvention
  • 使用 requirejs 和 r.js 优化器时无法加载 jQuery 插件

    我的 requirejs 优化器遇到了一些麻烦 运行优化器后 我在构建 编译文件中收到一些错误消息 在没有优化步骤的情况下运行我的网络应用程序时 我没有任何错误 这是我的 client js 文件 包含配置 coffeescript req
  • 选择行并更新相同行以进行锁定?

    我需要编写一个过程 允许我选择 x 行 同时更新这些行 以便调用应用程序知道这些记录已锁定并正在使用 我的表中有一个名为 锁定 的列 下次调用该过程时 它将仅提取下 x 条未选中 锁定 列的记录 我已经阅读了一些有关 SQL Server
  • 如何拥有两个独立的任务调度程序?

    我正在编写一个游戏 并且使用 OpenGL 我要求将一些工作卸载到 OpenGL 上下文处于活动状态的渲染线程 但其他所有工作都由普通线程池处理 有没有一种方法可以强制任务在特殊的线程池中执行 以及从线程池创建的任何新任务async也被调度
  • 如何使用 pd.to_datetime() 设置频率?

    在拟合统计模型时 我收到有关日期频率的警告 首先 我导入一个数据集 import statsmodels as sm df sm datasets get rdataset package datasets dataname airqual
  • GmailApp.getAliases() 返回一个空白列表

    我有一个有别名的用户 在 admin google com 中 我可以查看所有别名 但是当使用该用户时 我仅使用以下代码创建一个 Google Apps 脚本 var aliases GmailApp getAliases Logger l
  • 在类定义中使用类自己的类型[重复]

    这个问题在这里已经有答案了 以下代码无法按预期工作 显然 我不能在类定义中使用类自己的类型 class Foo def init self key str gt None self key key def eq self other Foo
  • 无法通过 SSH 克隆 Azure DevOps 存储库,需要密码

    我很难尝试通过 SSH 将 Azure DevOps 私有存储库克隆到运行 Ubuntu 18 04 的本地计算机 下列的 我使用创建了 SSH 密钥ssh keygen并提供密码 将公钥添加到 Azure DevOps 下用户设置 gt
  • 使用 C# 写入 CSV 文件

    我正在寻找一种在 CSV 文件的不同单元格中写入字符串的方法 我正在使用这个程序 private void button1 Click object sender EventArgs e string filePath E test csv
  • 通过 PowerShell 将所有已安装的软件分组到一个单元中

    我让 PowerShell 脚本在我们网络上的所有 PC 上运行 并从 PC 获取信息并将其保存在 CSV 文件中 并每次使用新 PC 作为新行更新文件 logData pscustomobject ComputerName Compute