【发布时间】:2018-09-07 03:05:52
【问题描述】:
我在 powershell 脚本方面相当陌生,需要有关 csv 格式的以下输出的帮助。我正在尝试选择一列,例如ACCOUNT.UPLOAD 和 make 和 if/else 语句将其输出到另一个 csv 文件中。请有人帮忙。
输出 csv 应如下所示:
$results = Import-Csv 'C:\Users\test\Desktop\Test\customer.csv' |
Select-Object "ACCOUNT.UPLOAD"
ForEach ($row in $results)
{
If ($row.Type0 -ne 'CP000101', 'CP000102')
{
$row."ACCOUNT.UPLOAD" = "$($row.ACCOUNT.UPLOAD)"
Write-Host $row."ACCOUNT.UPLOAD"
}
}
$results | Export-Csv C:\Users\test\Desktop\Test\test.csv -NoTypeInformation
谢谢
【问题讨论】:
-
(a)
$results包含只有 一个 属性的对象,即您使用Select-Object提取的ACCOUNT.UPLOAD属性。 (b) 因此,循环中的$row对象没有Type0属性(甚至不在您的 CSV 输入中)。 (c)-ne的 RHS 不支持 arrays - 请改用运算符-in。 (d)$row."ACCOUNT.UPLOAD" = "$($row.ACCOUNT.UPLOAD)"是无操作的,因为从 CSV 文件中读取的所有内容都是以字符串开头的 - 你想做什么?请通过直接更新您的问题来澄清。
标签: powershell csv scripting