У меня есть два файла.получить общие строки из двух текстовых файлов
Первый (file1
), как так: (всегда есть headerline перед «text'line)
>random header name1
wonderfulstringwhatsoevergoeson
>random header 2
someotherline
...
Другой файл (file2
) является доработанный файл file1
как: (заголовок, были удалены, и линии перемешиваются, новый заголовок был добавлен)
>name
someotherline
wonderfulstringwhatsoevergoeson
Каждая строка (без заголовка) из file1
происходит в file2
. Порядок строк в file2
отличается от file1
. Оба файла должны оставаться в том порядке, в котором они есть.
Каждая строка в file2
выход должен быть чем-то похожи: (заголовок file2
можно пренебречь)
>random header 2
>random header name1
Кто-подсказкой, как это сделать?
С наилучшими пожеланиями
Уверяю вас, они могут быть отсортированы. – ctn
Что это значит: их нельзя сортировать? Они слишком большие? Или это поток, а не сам файл? Это важно, потому что причина не сортировки может ограничить ваши варианты. В общем, как я понимаю, вы хотите найти строки, которые являются уникальными в обоих файлах. Обычно это делается с помощью: 'cat files * | сортировать | uniq -u' –
@depesz: Чтобы избежать бесполезных змеев, используйте 'sort files * | uniq -u'. – TrueY