Стандартный инструмент Unix для уникального набора

1

Следующий скрипт python печатает первое вхождение строки в файл.

#!/usr/bin/env python
import sys

x = set() 

for line in sys.stdin:
    if line not in x:
        print line,
        x.add(line)

uniq работает только для смежных линий. Файл, который будет использоваться, очень большой, поэтому sort | uniq sort | uniq не является идеальным. Есть ли стандартный инструмент, который это делает?

Показать ещё 2 комментария
Теги:

2 ответа

4
Лучший ответ

Вы пробовали sort -u? По крайней мере, то, что предлагает страница uniq man.

  • 0
    Спасибо, моя версия man-страницы uniq не упоминала об этом.
1

используя awk

awk '!x[$0]++' file.old > file.new

Ещё вопросы

Сообщество Overcoder
Наверх
Меню