Powershell, как добавить данные из CSV-файла в один столбец - PullRequest
1 голос
/ 23 марта 2011

У меня есть CSV-файл, где несколько столбцов.пример

col1; col2; col3; col4
text1; text2; text3; text3; text4
text5; text6; text7; text7; text8
text9; text10; text11; text12; text12

и я хочу добавить текст в столбец col3, например:

col1; col2; col3; col4
text1; text2; append \ text3; text4
text5; text6; append \ text7; text8
text9; text10; append \ text11; text12

Так что вопрос в том, как это сделать :) Я застрял в том, как я добавляю данные в каждый столбец в col3.

Ответы [ 2 ]

2 голосов
/ 23 марта 2011

Поверните это:

Import-Csv -Delim ';' cols.csv | 
    ForEach-Object {$_.col3 = "prepend\$($_.col3)";$_} |
    Export-Csv cols2.csv -Delim ';' -NoTypeInformation

Используйте параметр -NoTypeInformation, чтобы этот комментарий не помещался в верхнюю часть вашего CSV:

#TYPE System.Management.Automation.PSCustomObject

Однако, если вы нене возражайте против комментария, тогда вы можете пропустить параметр -NoTypeInformation.

1 голос
/ 23 марта 2011

Вы, вероятно, знаете, как читать / записывать данные.Чтобы изменить данные, отправьте их на Foreach-Object, измените данные и передайте объект дальше на Export-Csv.

Import-Csv d:\temp\so\csv1.txt  -Delimiter ';' | 
   ForEach-Object { $_.col3 = 'append\' +$_.col3; $_ } | 
   Export-Csv d:\temp\so\csv2.txt -Delimiter ';'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...