Предположи, есть файл test с таким содержимым:
123 1
234 2
123 3
234 4
678 5
123 6
876 7
Такая команда:
$ cat test | awk '! seen[$1]++'
Даст такой результат:
123 1
234 2
678 5
876 7
То есть уникльные записи по первому полю, но хотелось бы чтоб уникальная запись выводилась не первая встретившаяся, а последняя, то есть хотелось бы чтобы было вот так:
123 6
234 4
678 5
876 7
Сам порядок первого столбика не волнует, главное чтоб второй столбик соответствовал последней записи, то есть можно и так:
876 7
123 6
678 5
234 4
Можно как нить что нить подобное сделать??? Это нужно сделать используя awk без лишних конвееров, тип сначала сортируем в обртном порядке строки и т.д., всё нужно сделть в одном awk, так как файл очень большой порядка гига.. :-((
Спасибо большое...
Ответ на:
комментарий
от sdio
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от dilmah
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум awk print $1 $2 (2006)
- Форум Умножение строк в awk — возможно? (2012)
- Форум Знатокам BASH (возможно и AWK) (2006)
- Форум awk как perl (\w+) print $1 (2007)
- Форум Awk (2011)