Показать полную графическую версию : [решено] Поиск в csv файле
JimmLight
15-04-2021, 12:31
А можно ли как-то реализовать поиск в csv следующим образом: если значение "Слесарь-монтажник" имеется в csv, то копируем всю строку с этим значением в новый csv файл.
JimmLight
16-04-2021, 06:20
А можно ли как-то реализовать поиск в csv следующим образом: если значение "Слесарь-монтажник" имеется в csv, то копируем всю строку с этим значением в новый csv файл. »
Попробовал таким образом:
$Files = "C:\исходный файл.csv"
Get-Content $Files | Select-String "значение поиска" | Export-Csv "C:\Конечный файл.csv" -Encoding UTF8 -Delimiter ";"
Добавляется много непонятных значений столбцов:
"IgnoreCase";"LineNumber";"Line";"Filename";"Path";"Pattern";"Context";"Matches"
DJ Mogarych
16-04-2021, 09:03
JimmLight, CSV - это структурированный файл, и работать с ним как с обычным текстовым неверно.
Как называется колонка, в которой находится "слесарь-монтажник"?
JimmLight
16-04-2021, 09:55
JimmLight, CSV - это структурированный файл, и работать с ним как с обычным текстовым неверно.
Как называется колонка, в которой находится "слесарь-монтажник"? »
"слесарь монтажник" может быть в нескольких колонках: или "Колонка1" или "Колонка2" или "Колонка4" или "Колонка6".
DJ Mogarych
16-04-2021, 10:04
(Import-Csv "C:\исходный файл.csv") -match "слесарь-монтажник"
В зависимости от разделителя, может понадобиться добавить опцию -Delimiter
JimmLight
16-04-2021, 10:23
В зависимости от разделителя, может понадобиться добавить опцию -Delimiter »
(Import-Csv "C:\исходный файл.csv" -Encoding UTF8 -Delimiter ";") -match "слесарь-монтажник" | Export-Csv "C:\конечный файл.csv" -Encoding UTF8 -Delimiter ";"
Если я правильно понимаю, то должно быть так?
Почему то пустой "C:\конечный файл.csv" создаётся.
DJ Mogarych
16-04-2021, 10:24
Вы сначала без экспорта отладьте, чтобы нормально запускалось и выводило нужное.
Рекомендую Powershell ISE.
Foreigner
16-04-2021, 16:28
Почему то пустой "C:\конечный файл.csv" создаётся. »
Import-Csv .\1.csv -Delimiter ";" |
Foreach-Object {
if ($_.psobject.properties.value -eq 'слесарь-механик')
{ Export-Csv -InputObject $_ 2.csv -Append; continue }
}
Encoding добавите, если необходимо.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.