>>>Друзья! Помогите сделать такую вещь:
>>>Есть файл 1.txt и есть файл 2.txt
>>>Нужно удалить строки из файла 1.txt которые идентичны строкам из 2.txt
>>>Другими словами нужно "вырезать" содержимое файла 2.txt из файла 1.txt
>>>Файл 1.txt имеет около 1500 строк. Файл 2.txt имеет около 300 строк.
>>>
>>
>>
>>Мужики! Я разобрался! На самом деле не нужны никакие массивы в этом
>>случае. Вся операция выполняется с помощью команды comm.
>
>а как удалять строки из файла 1.txt ? видимо одной комманды comm
>маловато.
При запуске без ключей команда comm выдает результат в три столбца. Первый столбец
содержит строки, уникальные для ФАЙЛА1, второй -- уникальные для
ФАЙЛА2, а третий -- общие для обоих файлов строки.
Есть следующие ключи:
-1 не показывать строки, уникальные для ФАЙЛА1
-2 не показывать строки, уникальные для ФАЙЛА2
-3 не показывать строки, встреченные в обоих файлах
Ставим ключи -2 и -3. На вывод получаем только строки уникальные для файла 1.txt
Добавляем вывод в файл 3.txt и получаем в файле 3.txt отфильтрованный файл.
В общем команда выглядит так comm -2 -3 1.txt 2.txt > 3.txt
И ВСЕ!