我当前的 Powershell 脚本会输出计算机名称的 .txt 文档,以及我希望能够导入 csv 文件的软件,每个计算机名称都是一个新列。
目前输出如下所示:
PC1=
产品名称
软件A
软件B
PC2=
产品名称
软件A
软件B
我如何编写脚本以适当地对这些数据进行排序?直接导入到 csv 将在一个列中包含所有这些信息。有什么我可以在 foreach 循环上扔的东西让它写到下一列吗?或者我可以让每个循环写入它自己的 .txt,然后抓取每个 .csv 并将它们导入新工作表
这是源代码:
$ComputerNames = get-content ".\Computers.txt"
foreach ($Computer in $ComputerNames)
{$arryStandardSoftware = get-content -path ".\StandardSoftware.txt"| Foreach-Object{$_.trim()}
$AuditResult = (Get-WMIObject -namespace "root\cimv2\sms" -class sms_installedsoftware -computername "$computer"|
Select-Object productname|Where-Object{$arryStandardSoftware -notcontains "$($_.productname)"})
echo "$Computer ="$AuditResult | out-file ".\SoftwareAudit.txt" -append}