Я ищу что-то, что будет сравнивать каталоги и файлы, такие как Beyond Compare для windows.
В основном для использования источника управления, но мне также нужно использовать его для развертывания.
Я ищу что-то, что будет сравнивать каталоги и файлы, такие как Beyond Compare для windows.
В основном для использования источника управления, но мне также нужно использовать его для развертывания.
Meld - это инструмент, который может сравнивать и объединять файлы и каталоги. Это аналоговый графический интерфейс стандарта diff
и
patch
командалинейныхинструментов.(См. man diff и man patch для более подробной информации об этом)
Крометого,множествосистемуправленияверсиями(например,bzr
или
git
) имеют возможность создавать различия между версиями.
Diff - ваш друг.
diff -ur path1 path2
Это будет сравнивать все файлы, которые являются общими между path1 и path2.
Если вы измените -ur
на -urN
, тогда будет отображаться содержимое файлов, которые присутствуют только на одном из путей.
'Beyond Compare' также доступен для Linux.
Проверьте их URL-адрес загрузки: Ссылка
Используйте команду diff
:
diff -u file1 file2
diff -u
выбирает формат с несколькими строками контекста. В простом diff file1 file2
перечислены только разные строки. Есть еще много опций для управления выходным форматом, игнорирование различий в пробелах и т. Д.
Если вы хотите записать вывод в файл, перенаправьте его:
diff -u file1 file2 >file1-file2.diff
Интерфейсможетбытьнеоченьсексуальным,нооноченьмощный!
И если вы привыкли к другому * Commander (например, Norton или тому подобное), вы не будете потеряны.
Вдохновленный этой записи в блоге .
Список различных файлов:
diff -qr folder1 folder2
Листинг также содержимого:
diff -Naur folder1 folder2
Если два каталога не находятся на одной машине, то rsync
может быть самым простым решением. Обычно rsync
используется для синхронизации каталогов, но вы можете запускать его в подробном и сухом режиме, поэтому он будет только перечислять файлы, которые он должен будет изменить.
rsync -rvnc --delete folder1 server:/path/to/folder2
Вы можете ommit c
, если вы хотите сравнить файлы на основе временных меток и размеров файлов, чтобы ускорить все:
rsync -rvn --delete folder1 server:/path/to/folder2
Krusader - бесплатный инструмент (доступен в Центре программного обеспечения), который показывает содержимое папки в сравнении, и вы можете синхронизировать с множеством различных опций. Вы можете фильтровать, синхронизируя и сравнивая.
Чтобы сравнить содержимое файла, вы просто отмечаете два файла, выберите «файл» > «сравнить контент», и они сравниваются по буквам. инструмент сравнения по умолчанию, используемый krusader, является инструментом KDE по умолчанию « Kompare ». Вы можете настроить krusader на использование любого другого инструмента сравнения - например, одного из вышеперечисленных. Р>
Это самое полное решение, которое я когда-либо нашел, и это очень удобно. И он поддерживает все функции keybindungs, используемые командиром полуночи (синтаксис командующего norton). Р>
Это графический интерфейс для пользователей KDE (или если вы не против использования приложений Qt). Р>
Unison - это быстрый инструмент синхронизации файлов, который использует алгоритм rsync и позволяет просматривать различия перед обновлением между двумя местоположениями, будь то удаленные или локальные.
Я узнал о 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
Попробуйте также FreeFileSync . Он имеет достойный интерфейс, приемлемую скорость сравнения, хорошую фильтрацию результата сравнения, различные способы синхронизации. Он поставляется с инструментом мониторинга папки (RealTimeSync), который может запускать FreeFileSync (фактически любую команду или скрипт), когда эта конкретная папка (или папки) или файлы внутри изменены. Действительно стоит попробовать.
Подробнее об этом здесь или здесь , где у вас есть PPA , также
На своей странице основные функции:
Compare files (bytewise or by date) and synchronize them.
No limitations: An arbitrary number of files can be synchronized.
Unicode support.
Network support.
Built-in support for very long filenames (more than MAX_PATH = 260 characters).
Synchronization database for propagation of deleted files and conflict detection
Support for multiple folder pairs with distinct configuration
Full support for Windows/Linux Symbolic Links and Windows Junction Points.
Lean & easily accessible UI: Highly optimized for speed and huge sets of data.
Algorithms coded in C++ completely.
All progress indicators optimized for maximum performance!
Create Batch Jobs for automated synchronization with or without GUI.
Focus on usability:
Only necessary functionality on UI: no overloaded menus or icon jungle.
Select all folders via drag & drop.
Last used configuration and screen settings are saved automatically.
Maintain and load different configurations by drag & drop, load-button or commandline.
Double-click to start external application (e.g. show file in Windows Explorer)
Copy & paste all grid data as text
Delete superfluous/temporary files directly on main grid.
Right-click context menu.
Comprehensive status information and error reporting
Sort file-lists by name, size or date.
Поддержка файлов размером более 4 ГБ.
Возможность перемещения файлов в Корзину вместо их удаления / перезаписи.
Игнорировать каталоги «\ RECYCLER» и «\ System Volume Information» с фильтром по умолчанию. (Только для Windows)
Локализованные версии доступны для многих языков.
Удалить перед копией: Избегайте нехватки дискового пространства для больших синхронизаций.
Функция фильтрации для включения / исключения файлов из синхронизации (без повторного сравнения!).
Временно включать / исключать определенные файлы из синхронизации.
Автоматическое управление изменениями летнего времени на томах FAT / FAT32.
Доступна переносимая версия (выбирается через установщик).
Собственная 64-битная версия.
Проверяйте обновления из FreeFileSync автоматически.
Скопируйте заблокированные файлы с помощью службы теневого копирования томов Windows. (Только для Windows)
Создайте регулярные резервные копии с макросами% time%,% date% в именах каталогов
Скопировать файлы и папки при создании / доступе / изменении при синхронизации
Расширенная стратегия блокировки, позволяющая выполнять несколько процессов синхронизации (например, несколько авторов, один и тот же сетевой ресурс)
Я бы добавил, что он может управлять удаленными файлами, перемещая их в корзину или папку, указанную пользователем. Чтобы указать на недостаток: программная документация очень сильно фокусируется на Windows, меньше на Linux. Но он прекрасно работает.
Вы можете использовать diffuse:
sudo apt-get install diffuse
diffuse file1 file2
Хороший способ сделать это сравнение - использовать « find » с « md5sum », затем « diff ». p>
Пример:
Используйте 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/
С уважением!
Вы можете попробовать meld . Р>
Это репозитории и предоставляет графический интерфейс для сравнения файлов или папок.
Eclipse IDE является немного тяжеловесным, если вы просто делаете сравнения, но он хорошо справляется с этим, среди прочего. Вы можете выбрать 2 проекта, пути или файлы и сравнить их друг с другом, а также синхронизировать с серверами управления версиями.
IMHO FreeFileSync очень хорош и полезен, чем Meld. Он быстрый и стабильный, может выполнять себестоимость синхронизации и может также экспортировать результат сравнения в файл csv.
Кросс-платформенный, простой, без суеты и amp; профильные функции сохранения делают Jfilesync мой лучший выбор
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
вы можете использовать команду diff :
diff -r --brief dir1 dir2
man diff
-r, --recursive
recursively compare any subdirectories found
-q, --brief
report only when files differ