我将如何使用包含操作符的数组

时间:2019-05-30 14:17:44

标签: arrays powershell where

我有一个CSV文件,并且该文件有2列(这只是出于测试目的,在使用实际文件之前),我需要获取特定宠物的所有数据,因此在此示例中为Dog和Cat。

我将想要数据的动物放入数组中,但是由于某种原因,该语句无法正常工作,当我在数组位置使用字符串(所以只是“ dog”)时,它只是返回一个空文件然后我将数据恢复正常。我有什么事做错了吗

$Pets = "Dog", "Cat"

import-csv -Path "C:\Users\User\deletingRows.csv" | where Animal -Contains $Pets | export-csv -Path "C:\Users\User\Result.csv" -NoTypeInformation

1 个答案:

答案 0 :(得分:1)

我相信您误会了-Contains应该做什么。由于您试图将一个字段与多个值匹配(在$Pets之内),因此最好使用-In开关。请参见下面的工作示例。

$Pets = "Dog", "Cat"

Import-Csv -Path "C:\Users\User\deletingRows.csv" | where "Animal" -In $Pets | Export-Csv -Path "C:\Users\User\Result.csv" -NoTypeInformation