我有一个.csv与几百条记录,我需要解剖到几个不同的文件。有一部分代码需要一个对象数组并基于数组过滤文件。它对于发现与数组中的内容相同的部分很有用,但是当我尝试根据数组中未包含的内容进行过滤时,它会忽略任何我能找到的“不等于”运算符的版本。我认为这与数据类型有关,但不能确定当平等运营商工作时为什么它会有所作为。Powershell阵列导出不等于运营商不工作
CSV文件"Number","Ticket","Title","Customer User","CustomerID","Accounted time","Billing"
"1","2014041710000096","Calendar issues","george.jetson","Widget, Inc","0.25","Labor",""
"2","2014041710000087","Redirected Folder permission","jane.smith","Mars Bars, Inc.","1","Labor",""
"3","2014041610000203","Completed with No Files Changed ""QB Data""","will.smith","Dr. Smith","0","Labor",""
PowerShell代码
$msaClients = @("Widget, Inc","Johns Company")
$billingList = import-csv "c:\billing\billed.csv"
$idZero = "0"
$msaArray = foreach ($msa in $msaClients) {$billingList | where-object {$_.CustomerID -eq $msa -and $_."Accounted time" -ne $idZero}}
$laborArray = foreach ($msa in $msaClients) {$billingList | where-object {$_.CustomerID -ne $msa -and $_."Accounted time" -ne $idZero}}
$msaArray | export-csv c:\billing\msa.csv -notypeinformation
$laborArray | export-csv c:\billing\labor.csv -notypeinformation
我已经尝试了所有不同的逻辑运算符的不相等,它只是似乎忽略的那部分。如果事情看起来不正确,我还有更多的代码。
我错过了什么,并预先感谢您的帮助!
你绝对摇滚,非常感谢你! – user3550556
很高兴我能帮忙:) – Nitesh