wxHexEditor

wxHexEditor

Я хочу найти различия между двумя текстовыми файлами (более 50 ГБ каждый).

Я попробовал diff, но у меня возникла memory exhaustedпроблема.

Я использую Windows7. Мой код на PHP. Я вызывал diff из моего php как:

shell_exec("C:\\cygwin64\\bin\\bash.exe --login -c 'diff $text_files_path/$OldDatabaseFile.txt $text_files_path/$NewDatabaseFile.txt >  $text_files_path/TempDiff_$OldDatabaseFile$NewDatabaseFile.txt 2>&1'");

Кто-то рассказал мне о том rdiff, что он генерирует сигнатуру и дельту, но я не тестировал его, потому что не знаю, с чего начать.

Откуда я могу его установить? Откуда я могу его запустить? Из windows cmd или cygwin cmd?

решение1

Вы пробовали --speed-large-filesпереключиться на diff? Это должно тратить меньше памяти:

diff --speed-large-files [...]

Из страницы руководства для diff:

--скорость-большие-файлы

предполагают большие файлы и множество разрозненных мелких изменений

решение2

wxHexEditor

wxHexEditor бесплатен и может сравнивать большие файлы размером до 2^64 байт (2 экзабайта). Имеет графический интерфейс. Кроссплатформенный. Множество функций.

Чтобы получить его бесплатно, выберите один из следующих вариантов:

  • Вариант:SourceForge
  • Вариант:GitHub
  • Вариант: репозитории Debian и Ubuntu

Ниже приведено то же предложение, что и выше. Но с подробностями, если они вам интересны.

Скриншот

введите описание изображения здесь

Сила

• Шестнадцатеричный (Hex) редактор. Полезно для обратного инжиниринга.

• Кроссплатформенность. Linux, Mac OS, Windows

• Простой в использовании графический интерфейс пользователя (GUI)

• Поддерживает очень большие файлы размером до 2^64 байт (2 Эксабайта)

• Сравнение двух больших файлов бок о бок (разн.). При желании вывести список и выполнить поиск по всем разн.

• Очень быстрый поиск

• Использовать небольшой объем оперативной памяти

• Не создавать временные файлы. Поэтому он использовал очень мало места для хранения.

• Темная или светлая тема

• Многоязычный 15 языков

• Открытый исходный код. Если вы не знакомы с "открытым исходным кодом", это означает, что это программное обеспечение имеет как более высокую безопасность, так и более высокую конфиденциальность. Поскольку его код доступен для публичного ознакомления и внесения вкладов в GitHub по адресуhttps://github.com/EUA/wxHexEditorили на SourceForge по адресуhttps://sourceforge.net/p/wxhexeditor/code/

• Привлекательная GNU General Public License версии 2. Это означает, что программный код этого расширения принадлежит и поддерживается дружественным некоммерческим сообществом. Вместо коммерческой корпорации.https://github.com/EUA/wxHexEditor/blob/master/ЛИЦЕНЗИЯ

Испытание

• Путаница между двумя репозиториями кода. На момент написания этой статьи, август 2021 года, репозиторий GitHub, похоже, был более новым. Поскольку он последний раз обновлялся в 2021 году наhttps://github.com/EUA/wxHexEditor Для сравнения, репозиторий SourceForge по адресуhttps://sourceforge.net/projects/wxhexeditor/Последнее обновление wxHexEditor было 31 декабря 2017 года.

Покажите свою поддержку

• Если вам понравилось это приложение, покажите свою поддержку авторам и участникам:

___• Пожертвование вhttps://www.paypal.com/cgi-bin/webscr?item_name=Donation+to+wxHexEditor&cmd=_donations&business=erdem.ua%40gmail.com

___• Поддержка с тикетом по адресуhttps://sourceforge.net/projects/wxhexeditor/support

___• Поддержка на форумеhttps://sourceforge.net/p/wxhexeditor/discussion/

___• Патч наhttps://sourceforge.net/p/wxhexeditor/patches/

С использованием

• wxHexEditor 0.23 • Debian 10 Buster • GNOME 3.30.2

решение3

Где я могу его установить ( rdiff)?

Кто-то мне сказал, rdiffчто генерирует сигнатуру и дельту, но я не тестировал, потому что не знаю, с чего начать. Откуда я могу установить его? и откуда я могу его запустить? Из windows cmdили cygwin cmd?

CygwinВключает rdiff. Он находится в rdiff-1.0.0-1упаковке.


Откуда я могу его запустить ( rdiff)?

Кто-то мне сказал, rdiffчто генерирует сигнатуру и дельту, но я не тестировал, потому что не знаю, с чего начать. Откуда я могу установить его? и откуда я могу его запустить? Из windows cmdили cygwin cmd?

Вы запускаете оболочку rdiffCygwin bash.

shell_exec("C:\\cygwin64\\bin\\bash.exe --login -c 'diff $text_files_path/$OldDatabaseFile.txt $text_files_path/$NewDatabaseFile.txt >  $text_files_path/TempDiff_$OldDatabaseFile$NewDatabaseFile.txt 2>&1'");

Команда, аналогичная приведенной выше (заменив diffи rdiffизменив параметры команды по мере необходимости), должна работать.


Как узнать, rdiffв какой упаковке находится товар?

Самый простой способ найти пакет, содержащий определенную команду, — использоватьПоиск пакетов Cygwinвеб-страница:

введите описание изображения здесь

Прокрутите страницу вниз:

введите описание изображения здесь

Нажмите наrdiff-1.0.0-1:

введите описание изображения здесь

Это подтверждает, что rdiff-1.0.0-1это правильный пакет для установки.

ВидетьУстановка и обновление пакетов Cygwinдля получения инструкций по установке.

Связанный контент