使用Format Table Cmdlet运行foreach循环

时间:2015-03-12 09:50:22

标签: powershell csv foreach

我正在尝试导入csv文件,将结果格式化为表格&最后在表中的每一行上运行一个foreach循环。导入和格式表工作正常,但我不能让foreach工作。

以下按预期方式运作:

$csvFile="C:\cvsFile.csv"
$table = Import-Csv $csvFile | Format-Table

但是当我尝试在$ table变量上做一个简单的foreach时,结果集是空的(它不会抛出任何错误)。

$csvFile="C:\cvsFile.csv" $table = Import-Csv $csvFile | Format-Table
foreach($record in $table) {    Write-Host $record.Field1 }

是否可以这样使用Format-Table的输出?

1 个答案:

答案 0 :(得分:1)

使用format- * cmdlet格式化结果的输出(显示),它们应该是管道中使用的最后一个cmdlet! 你想要的可能是这样的:

$c=Import-Csv c:\csv.csv
$c | foreach {
    $_ | format-table #all columns
    $_.Field1 #one column
}