Обычно, когда я попадаю в такие ситуации, я делаю следующее ..
Пример: Предположим, у меня есть файл 'xxx \ nyyy'
Я знаю, что он начинается с 'xxx' .....
Я использую команду:
rm -i xxx*
И удаляю ПРАВЫЙ файл при появлении запроса, хотите ли вы удалить файл или нет.
Для правильной работы comm
оба файла должны быть отсортированы лексикографически, а не численно. Вы можете отсортировать файлы перед вызовом comm
с помощью
sort -o file1 file1
sort -o file2 file2
Затем:
$ comm -23 file1 file2
4
8
Или вы можете сортировать файлы одновременно с вызовом comm
, если ваша оболочка поддерживает подстановку процессов:
$ comm -23 <( sort file1 ) <( sort file2 )
4
8
Вы можете использовать grep
grep -F -x -f 'File2' -v 'File1'
Шаблон фиксированных --строк (-F )в файле 2 (-f)
Используйте -x
для поиска целых строк. В противном случае «0123» в файле 1 будет исключено из вывода из-за «12» в файле 2.
найти аналогичную прямую и обратную с (-v)