Как добавить префикс к каждой строке определенного столбца в файле csv с помощью командной строки в linux

Поэтому в основном я пытаюсь добиться следующего. 

 



Файл перед редактированием. 



колонка-1, колонка-2, колонка-3, колонка-4, колонка-5

Подряд-1-С1, ряд-1-С2, ряд-1-С3, ряд-1-С4, ряд-1-С5

Ряд-2-С1, строк-2-С2, ряд-2-С3, ряд-2-С4, строк-2-С5

Ряд-3-С1, ряд-3-С2, ряд-3-С3, ряд-3-С4, ряд-3-С5

Строка-4-c1,  Строки-4-С2, ряд-4-С3, ряд-4-С4, ряд-4-С5

Строки-5-С1, Роу-5-С2, ряд-5-С3, ряд-5-С4, Роу-5-С5

 

Файл после редактирования



колонка-1, колонка-2, колонка-3, колонка-4, колонка-5

Подряд-1-С1, ряд-1-С2, префикс-строка-1-С3, ряд-1-С4, ряд-1-С5

Ряд-2-С1, строк-2-С2, приставка-ряд-2-С3, строк-2-С4, строк-2-С5

Ряд-3-С1, ряд-3-С2, префикс-строка-3-С3, ряд-3-С4, ряд-3-С5

Подряд-4-С1, ряд-4-С2, префикс-строка-4-С3, ряд-4-С4, ряд-4-С5

Строки-5-С1, Роу-5-С2, приставка-рядная-5-С3, ряд-5-С4, Роу-5-С5



обратите внимание, что столбец 3-столбец, что префикс добавляется к каждой строке, кроме заголовка столбца. 

6
задан Jerome Ricketts
05.02.2023 10:34 Количество просмотров материала 2845
Распечатать страницу

1 ответ

заменить С колонки поменять номер, <prefix> с префиксом, <inputfile> и <outputfile> с входным и выходным именем файла соответственно.

awk '{="<prefix>"; print}' <inputfile> ><outputfile>

Я заметил, в вашем примере, что первая строка не была изменена; если вы хотите, чтобы это поведение, используйте следующую команду:

awk '{if(NR==1){print; next}; ="<prefix>"; print}' <inputfile> ><outputfile>
1
отвечен BenjiWiebe 2023-02-06 18:22

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

awk
csv
linux
text-editors
vi
Вверх