Powershell - 不允许使用空管道元素

标签 powershell csv

每当我尝试将结果输出到 csv 文件时,我都会不断收到滚动错误消息 - “不允许使用空管道元素”。知道为什么会发生这种情况吗?

$apps = Import-CSV apps.csv
$computers = Import-CSV compobj.csv
foreach($computer in $computers) {    
    $computerLob = $computer.lob
    $lobApps = $apps | ? {$_.lob -eq $computerLob}
    foreach($app in $lobApps){
       $appLocation = $app.location
       $installed=Test-Path "\\$computerHostname\$appLocation"
       $computerHostname = $computer.hostname     
       $results = new-object psobject -property @{Computer=$computer.hostname;App=$app.appname;Installed=$installed} | select Computer,App,Installed 
       $results 
    } 
} | Export-csv "results.csv" -NoTypeInformation

我试过这样做:
$results | Export-csv "results.csv" -NoTypeInformation

在 foreach 循环中,但它只返回最后一条记录。

最佳答案

foreach 循环不会输出到管道。您可以通过使循环成为子表达式来做到这一点:

$apps = Import-CSV apps.csv
$computers = Import-CSV compobj.csv
$(foreach($computer in $computers) {    
    $computerLob = $computer.lob
    $lobApps = $apps | ? {$_.lob -eq $computerLob}
    foreach($app in $lobApps){
       $appLocation = $app.location
       $installed=Test-Path "\\$computerHostname\$appLocation"
       $computerHostname = $computer.hostname     
       $results = new-object psobject -property @{Computer=$computer.hostname;App=$app.appname;Installed=$installed} | select Computer,App,Installed 
       $results 
    } 
}) | Export-csv "results.csv" -NoTypeInformation

关于Powershell - 不允许使用空管道元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19652498/

相关文章:

powershell - 如何使用名称为*的Get-Counter选择性能计数器

mongodb - 如何使用 Powershell 对 MongoDB 进行复杂查询

powershell - 仅获取 WmiObject win32 类?

将文件夹中的多个 csv 文件读取到 R 中的单个数据帧中

python - 在我能读懂它说的内容之前,Nosetests 就关闭了

powershell - 脚本中的powershell语法错误 ')'

iphone - 如何在 iPhone sdk 的 MFMailComposer 中创建并附加 CSV 文件?

javascript - 如何从浏览器FETCH触发浏览器下载?

javascript - 从 HTML 网站查询或搜索 CSV 的最佳方式

javascript - 使用 PHP/jQuery 下载 CSV