Как в sh получить строчки, входящие в 1 текстовый файл, но не входящие во второй? Дело в том, что совпадающие строчки могут быть в файлах на разных местах, кроме того уникальный строки есть как в 1м, так и во 2м.
diff сравнивает только соответствующие номера строк, комбинация
# diff f1 f2 | grep "<" | sed s/"< "// > f3
тоже работает неправильно.
>Как в sh получить строчки, входящие в 1 текстовый файл, но не
>входящие во второй? Дело в том, что совпадающие строчки могут быть
>в файлах на разных местах, кроме того уникальный строки есть как
>в 1м, так и во 2м.
>diff сравнивает только соответствующие номера строк, комбинация
># diff f1 f2 | grep "<" | sed s/"< "// > f3
>тоже работает неправильно.Попробуйте
sort f1 >f1_sorted; sort f2 >f2_sorted; diff f1_sorted f2_sorted | grep '^<' | sed -e 's/^< //'; rm -f f1_sorted f2_sortedУспехов
--- sas