Перечисление повторяющихся слов
У меня есть файл, который выглядит так:
(aa,((bb,cc),dd));
(((aa,cc),ee),(ff,gg));
((aa,ff),hh);
Каждая строка на самом деле представляет филогенетическое дерево в формате newick. Я хотел бы перечислить все имена, которые имеют дубликаты, то есть вхождение>1. Например, в этом случае вывод:
aa, cc, ff
1 ответ
Решение
tr -cs '[:alpha:]' '\n' < file | sort | uniq -d | paste -sd,
Тот tr
Команда преобразует все последовательности не букв в новую строку