Выберите добавленные строки из файла

У меня есть две версии файла, в которых у более новых есть несколько строк. Файлы сортируются (думают о списках слов), и я хочу распечатать вновь добавленные строки (данные file1 и file2).

Я знаю, как написать небольшой скрипт python или perl для достижения этой задачи, но можно ли это сделать и с основными утилитами оболочки UNIX?

2 Solutions collect form web for “Выберите добавленные строки из файла”

взгляните на comm(1) .

то, что вы ищете

 comm -13 file1 file2 

или

 comm -3 file1 file2 

Пусть a.txt:

 aaa bbb ccc 

Пусть b.txt :

 aaa bbb ccc ddd eee 

Используя comm с -3 вы можете получить желаемый результат:

 comm -3 a.txt b.txt ddd eee 
  • Двоичный поиск неисправной линии
  • Как получить только имена подпапок, состоящие только из верхних букв?
  • команда find возвращает текущий рабочий каталог как первый вывод
  • Что означает эта линия Баша?
  • Grep строка из того же файла в нескольких файлах .tar.gz
  • Как передать параметр sed?
  • Заменить очень длинную строку в файлах рекурсивно
  • найти все конечные подкаталоги в дереве
  • Греп что-то конкретное из результатов последнего исполнения?
  • bash - выделение прописных слов
  • Как удалить сообщения об ошибках при поиске рекурсивно для строки?
  • Игнорирование файлов, которые не могут найти или открыть файл cannnot?
  • Linux и Unix - лучшая ОС в мире.