Как бы я использовал массив с оператором содержимого - PullRequest
0 голосов
/ 30 мая 2019

У меня есть файл CSV, и в этом файле 2 столбца (это только для целей тестирования перед использованием реальных файлов), мне нужно получить все данные для конкретных домашних животных, поэтому в данном примере Dog и Cat.

Я поместил животных, для которых нужны данные, в массив, но по какой-то причине оператор не работает, он просто возвращает пустой файл, когда вместо массива я использую строку (так что просто "собака")тогда я получаю данные обратно в порядке.Есть что-то, что я делаю не так

$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 Ответ

1 голос
/ 30 мая 2019

Полагаю, вы неправильно понимаете, что должен делать -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
...