Одинаковый 3 столбец и переменный четвертый столбец;в одной строке выведите одинаковый столбец, а в четвертом - все переменные, разделенные - PullRequest
0 голосов
/ 22 мая 2019

У меня есть файл, для которого, кроме последнего столбца, оставшиеся столбцы могут быть идентичными.Для одинаковых столбцов я хочу напечатать одну строку с одинаковыми столбцами, а в последнем столбце соответствующие им записи последнего столбца, разделенные запятой.

File1.txt

a   2   10  a
a   2   10  c
b   5   8   c
b   7   2   a
c   9   0   d
c   9   0   c
c   9   0   a

Ожидаемый результат

a   2   10  a,c
b   5   8   c
b   7   2   a
c   9   0   d,c,a

Я знаю, как сделать обратное (кома до новой строки);но не этот.

1 Ответ

0 голосов
/ 23 мая 2019

Следующий ответ от https://stackoverflow.com/users/10248678/oguz-ismail работает отлично.Это, кажется, ответ был удален как-то.Следовательно я отправляю это

awk '{k=$1;for(i=2;i<=NF-1;++i) k=(k FS $i)} pk!=k{if(NR>1) print "";pk=k;printf "%s",$0;next} {printf ",%s",$NF} END{print ""}'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...