Сценарий оболочки и проблема CSV для записи в файл - PullRequest
0 голосов
/ 28 марта 2011

Я пытаюсь добавить информацию в файл acsv с помощью сценария оболочки.

На данный момент я добавляю информацию, моя проблема в том, что файл csv не пуст в начале.

Поэтому я хотел бы поместить новую информацию в другой столбец.

Но я не могу найти способ сделать это.

вот мой код:

sed -i '1i column3' test.csv

sed -i '2i ;; 4' test.csv

sed -i '3i ;; 2' test.csv

Вывод, который у меня есть,

столбец 3

       4

       2

1 2

3 4

И мне бы хотелось:

1 2 столбец 3

3 4 4

 2

Как вы думаете, это возможно?

спасибо

1 Ответ

0 голосов
/ 28 марта 2011

Это должно сделать то, что вы написали в своем примере:

sed -i '1s/.*/& column3/' test.csv
sed -i '2s/.*/& 4/' test.csv

с awk (если вы хотите использовать пробел в качестве разделителя, просто пропустите часть "-vOFS =, -F,"):

awk -vOFS=, -F, 'NR==1 {$3="col3"; print;}' test.csv
awk -vOFS=, -F, 'NR==2 {$3=4; print;}' test.csv

Изменить первый столбец:

awk -vOFS=, -F, 'NR==1 {$1="col1"; print;}' test.csv

Вставить столбец между 2:

awk -vOFS=, -F, 'NR==1 {print $1,"newcol",$2;}' test.csv
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...