Удалите столбцы и последнюю строку файла CSV с помощью сценария PowerShell - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть CSV-файл, как показано ниже, но идентификаторы, такие как столбцы 1 и 4, удалены, последняя строка удалена, а затем удалены речевые метки, чтобы экспортировать новый файл в путь UNC.Я также хочу, чтобы скрипт запускался с пути UNC, если это вообще возможно.Может ли новое имя файла совпадать с исходным с добавлением _new?

Текущий файл (file.txt):

"col1","col2","col3","col4","col5"
"col1","col2","col3","col4","col5"
"col1","col2","col3","col4","col5"
"col1","col2","col3","col4","col5"
"","","","","","","","","","","","","1111.00","11",""

Ожидаемый конечный результат (file_new.csv):

col2,col3,col5
col2,col3,col5
col2,col3,col5
col2,col3,col5

Сценарий PowerShell, который я пытался использовать:

Import-Csv C:\temp\*.txt -Delimiter "," |
    Select Column2,Column3,Column5 |
    Export-Csv C:\Temp\New.txt -Delimiter "," -Encoding UTF8 -NoTypeInfo

1 Ответ

0 голосов
/ 12 февраля 2019

Поскольку в вашем файле нет заголовков (или они называются col1..5), вам придется либо указать их

> Import-Csv file.txt -Header (1..5|%{"Column$_"}) |Select-Object Column2,Column3,Column5 -SkipLast 1

Column2 Column3 Column5
------- ------- -------
col2    col3    col5
col2    col3    col5
col2    col3    col5
col2    col3    col5

, либо использовать правильные имена:

> Import-Csv file.txt |Select-Object Col2,Col3,Col5 -SkipLast 1

col2 col3 col5
---- ---- ----
col2 col3 col5
col2 col3 col5
col2 col3 col5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...