Удаление повторяющихся записей в текстовом файле

Я делаю некоторую сортировку с помощью команды uniq -d . это не дает мне желаемых результатов.

Мой файл похож:

 >TCONS_00000066 174 206 33 >TCONS_00000066 210 281 72 >TCONS_00000066 227 316 90 >TCONS_00000066 285 338 54 >TCONS_00000066 335 373 39 >TCONS_00000066 342 377 36 >TCONS_00006042 493 552 60 >TCONS_00006042 562 606 45 >TCONS_00006042 630 686 57 >TCONS_00006042 622 699 78 >TCONS_00006042 614 724 111 >TCONS_00006042 696 767 72 

Я хочу удалить дубликаты в столбце 1

вывод:

  >TCONS_00000066 >TCONS_00006042 

но я получаю пустой файл каждый раз, когда я делаю

uniq -d file> newfile

Есть ли другой путь?

  • как вычислять средние значения в столбце, рассматривая информацию из другого столбца?
  • Десятичный номер преобразования формы x.xx в 0x.xx, sed?
  • Не удалось распечатать awk'ed datum в сценарии bash
  • Сравнение 2 файлов со вторым файлом, содержащим подмножество данных из файла 1
  • Как подсчитать наличие шаблона в строке
  • Удаление определенной строки из файла
  • wc -L сообщает длину строки 8 для tab-char. ошибка или функция?
  • Как я могу разобрать вывод многострочной команды в bash?
  • 3 Solutions collect form web for “Удаление повторяющихся записей в текстовом файле”

    Вы можете использовать awk:

     awk '!x[$1]++ { print $1 }' file 

    uniq -d перечисляет только дублированные строки из своего ввода; поскольку ваш файл не содержит повторяющихся строк (рассматривается полностью), он ничего не выводит.

    Чтобы получить результат, вам нужно извлечь первый столбец и отфильтровать его:

     cut -d\ -f1 file | uniq 

    если ваш файл отсортирован ( uniq только фильтрует дубликаты соседних строк); в противном случае

     cut -d\ -f1 file | sort -u 

    Или вы можете сделать это с awk как указано taliezin , с небольшим вариантом, чтобы выводить только первый столбец:

     awk '!x[$1]++ { print $1 }' file 

    Uniq не сортирует и не разделяет остальную часть строки. uniq -d показывает только дублированные строки, которые не совпадают с отображением каждой строки один раз (т. е. с -d она должна быть там дважды и последовательно показана)

    Сначала разрежьте неинтересные столбцы, затем отсортируйте, а затем найдите уникальные элементы:

     cut -d ' ' -f 1 your_file | sort | uniq 
    Interesting Posts

    Выполнить команду при входе пользователя в систему

    Увеличить размер значка / текста в Kali Linux

    Копировать только Конкретный текст файла в другой

    После включения SELinux (разрешающего режима) в Debian Wheezy gdm3 не завершит загрузку

    Начало в нормальном режиме на bash

    Загрузите файл yesterdays с FTP-сервера

    Из-за пробелов между одним словом Awk изменился вывод

    Как сделать USB загрузочным, если есть таблица разделов, которая должна быть сохранена

    Возможно ли получить список файлов, диапазон байтов от заголовка файла tar + bzip2?

    Что делает параметр -size Xrandr?

    Объединение операторов awk

    Попытался переместить файл с помощью команды mv и теперь он потерян?

    Могу ли я сообщить mpd, чтобы добавить воспроизводимую в данный момент песню к определенному списку воспроизведения?

    Я хочу увеличить размер кнопки закрытия в openbox

    как извлечь шаблон из pdf и сохранить в текстовый файл

    Linux и Unix - лучшая ОС в мире.