Фильтрация данных из файла CSV с помощью PowerShell - PullRequest
0 голосов
/ 01 мая 2019

У меня есть огромный CSV-файл, где первая строка содержит заголовки данных. Поскольку размер файла я не могу открыть с Excel или подобным. Мне нужно отфильтровать строки, что мне нужно только. Я хотел бы создать новый CSV-файл, который содержит только данные, где Header3 = "TextHere". Все остальное отфильтровано.

Я пробовал в PowerShell Get-Content Select-String | Out-File 'newfile.csv', но он потерял строку заголовка и также испортил данные, поместив данные в неправильные поля. Там есть пустые поля в данных, и я считаю, что это портит. Когда я пытался получить данные Get-Content -First или -Last, они были в порядке.

У меня нет опыта работы с большими файлами данных или PowerShell. Также возможны и другие опции, кроме PowerShell, если они бесплатны для «некоммерческого использования»

1 Ответ

0 голосов
/ 01 мая 2019

попробуйте вот так (при необходимости измените разделитель):

import-csv "c:\temp\yourfile.csv" -delimiter ";" | where Header3 -eq "TextHere" | export-csv "c:\temp\result.csv" -delimiter ";" -notype
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...