File_1.txt
Line1
Line2
File_2.txt
Line1
Line 2
Вы можете использовать команду cmp
:
cmp -b "File_1.txt" "File_2.txt"
вывод будет
a b differ: byte 11, line 2 is 62 2 40
[1110 ] Для сравнения директорий (ваша потребность): вы можете использовать команду diff :
diff -r --brief dir1 dir2
man diff
-r, --recursive
recursively compare any subdirectories found
-q, --brief
report only when files differ
Интерфейс может быть не очень сексуальным, но он чрезвычайно мощный! ]
И если вы привыкли к другому * Командиру (например, Нортону или тому подобное), вы не будете потеряны.
IMHO FreeFileSync очень хорош и полезен, чем Meld. Он быстрый и стабильный, может выполнять синхронизируемые по стоимости затраты, а также может экспортировать результат сравнения в CSV-файл.
Дифф твой друг.
diff -ur path1 path2
Это позволит сравнить все файлы, которые являются общими для path1 и path2.
Если вы измените -ur
на -urN
, это также покажет содержимое файлов, которые присутствуют только в одном из путей.
Meld - это инструмент, который может сравнивать и объединять файлы и каталоги. Это графический интерфейс, аналогичный стандартным инструментам командной строки diff
и
patch
. (См. man diff и man patch для более подробной информации о них)
Также Многие системы контроля версий (такие как bzr
или
git
) имеют возможность создавать различия между версиями.
beyond compare
ниже. превосходит Мельд Имхо
– deceze
18.05.2020, 23:16
Я узнал о hashdeep две недели назад. И у этого есть некоторые сильные преимущества:
meld
, он хорошо работает для очень больших папок. Когда meld
становится чрезвычайно медленным и пользовательский интерфейс не отвечает (блокируется), hashdeep просто работает с постоянной скоростью rsync
, hashdeep обнаруживает перемещенные файлы - файлы с одинаковым содержимым, просто в другом каталог. Подробный вывод похож на:
...
foo/bar.txt: Known file not used
x/foo/M0824_2L.JPG: Moved from y/P1010998.JPG
hashdeep: Audit failed
Input files examined: 0
Known files expecting: 0
Files matched: 6233
Files partially matched: 0
Files moved: 3695
New files found: 19257
Known files not found: 4713
Вы можете попробовать meld .
Это репозитории и предоставляет графический интерфейс для сравнения файлов или папок.
Попробуйте также FreeFileSync . Имеет неплохой интерфейс, приемлемую скорость сравнения, хорошую фильтрацию результатов сравнения, различные способы синхронизации. Он поставляется с инструментом мониторинга папок (RealTimeSync), который может запускать FreeFileSync (фактически любую команду или сценарий) при изменении этой конкретной папки (или папок) или файлов внутри. Действительно стоит попробовать.
Больше информации об этом здесь или здесь , где у вас есть PPA , также
На их странице, ключевые особенности:
Сравнивайте файлы (в порядке байтов или по дате) и синхронизируйте их.
Нет ограничений: можно синхронизировать произвольное количество файлов.
Поддержка Unicode.
Поддержка сети.
Встроенная поддержка очень длинных имен файлов (более MAX_PATH = 260 символов).
База данных синхронизации для распространения удаленных файлов и обнаружения конфликтов
Поддержка нескольких пар папок с различной конфигурацией
Полная поддержка символических ссылок Windows / Linux и точек соединения Windows.
Lean & amp; легко доступный пользовательский интерфейс: высоко оптимизирован для скорости и огромных массивов данных.
Алгоритмы полностью написаны на C ++.
Все индикаторы выполнения оптимизированы для максимальной производительности!
Создание пакетных заданий для автоматической синхронизации с или без графического интерфейса.
Сосредоточьтесь на удобстве использования:
Только необходимые функции в пользовательском интерфейсе: нет перегруженных меню или значков джунглей.
Выбрать все папки с помощью перетаскивания падение.
Последняя использованная конфигурация и настройки экрана сохраняются автоматически.
Поддерживайте и загружайте различные конфигурации с помощью перетаскивания. падение, кнопка загрузки или командная строка.
Дважды щелкните, чтобы запустить внешнее приложение (например, показать файл в проводнике Windows)
Копировать и amp; вставьте все данные сетки в виде текста
Удалите лишние / временные файлы непосредственно в основной сетке.
Щелкните правой кнопкой мыши контекстное меню.
Полная информация о состоянии и отчеты об ошибках
Сортировка списков файлов по имени, размеру или дате.
blockquote> blockquote> blockquote>Поддержка файлов размером более 4 ГБ.
Возможность перемещать файлы в корзину вместо удаления / перезаписи.
Игнорировать каталоги "\ RECYCLER" и "\ System Volume Information" с фильтром по умолчанию. (Только для Windows)
Локализованные версии доступны для многих языков.
Удалить перед копированием: избегайте нехватки места на диске для больших заданий синхронизации.
Функциональность фильтра для включения / исключения файлов из синхронизации (без необходимости повторного сравнения!).
Временно включать / исключать определенные файлы из синхронизации.
Автоматически обрабатывать изменения летнего времени на томах FAT / FAT32.
Доступна портативная версия (выбирается через установщик).
Родная 64-битная версия.
Проверять наличие обновлений из FreeFileSync автоматически.
Скопируйте заблокированные файлы с помощью службы теневого копирования томов Windows. (Только для Windows)
Создание регулярных резервных копий с макросами% time%,% date% в именах каталогов
Копирование файлов и времени создания / доступа / изменения папок при синхронизации
Дополнительно стратегия блокировки, позволяющая использовать несколько процессов синхронизации (например, несколько устройств записи, один и тот же сетевой ресурс)
blockquote>Я бы добавил, что он может управлять удаленными файлами, перемещая их в корзину или папку, указанную пользователем. Отметим один недостаток: программная документация в основном ориентирована на Windows, а не на Linux. Но он хорошо работает.
Krusader - это бесплатный инструмент (доступен в Центре программного обеспечения), который показывает содержимое папки в сравнении, и вы можете синхронизировать с множеством разных вариантов. Вы можете фильтровать во время синхронизации и сравнения.
Чтобы сравнить содержимое файла, просто отметьте два файла, выберите «файл»> «сравнить содержимое», и они будут сравниваться по буквам. инструментом сравнения по умолчанию, используемым krusader, является инструмент KDE по умолчанию " Kompare ". Вы можете настроить krusader на использование любого другого инструмента сравнения, например, одного из приведенных выше.
Это самое полное решение, которое я когда-либо нашел, и это очень удобно. И он поддерживает все функции keybindungs, используемые Midnight Commander (синтаксис Norton Commander).
Используйте команду diff
:
diff -u file1 file2
diff -u
выбирает формат с несколькими строками контекста. В простой строке diff file1 file2
перечислены только разные линии. Есть еще много опций для управления форматом вывода, игнорирования различий только с пробелами и т. Д.
Если вы хотите записать вывод в файл, перенаправьте его:
diff -u file1 file2 >file1-file2.diff
«Beyond Compare» также доступна для Linux.
Проверьте их URL для загрузки: http://www.scootersoftware.com/download.php
Unison - это быстрый инструмент синхронизации файлов, использующий алгоритм rsync и позволяющий предварительно просмотреть различия перед обновлением между двумя местоположениями, будь то удаленное или локальное.
Хороший способ сделать это сравнение - использовать « find » с « md5sum », а затем « diff ».
Пример:
Используйте find, чтобы вывести список всех файлов в каталоге, затем вычислить хэш md5 для каждого файла и передать его в файл:
$find /dir1/ -type f -exec md5sum {} \; > dir1.txt
Выполните ту же процедуру, чтобы другой каталог:
$find /dir2/ -type f -exec md5sum {} \; > dir2.txt
Затем сравните результаты двух файлов с «diff»:
$diff dir1.txt dir2.txt
Эта стратегия очень полезна, когда сравниваемые два каталога не совпадают и вы должны убедиться, что файлы в обоих каталогах совпадают.
Еще один хороший способ выполнить работу - использовать git
git diff --no-index dir1/ dir2/
С уважением!
Вы можете использовать diffuse:
sudo apt-get install diffuse
diffuse file1 file2