Текстовый редактор или ридер для работы с огромными файлами в Windows

В офисе некоторые файлы журнала сервера становятся слишком большими, и попытка просмотреть журналы может быть настоящей проблемой, когда, например, у вас есть текстовый файл размером в несколько ГБ, и все обычные текстовые редакторы загружают весь файл в память, становясь действительно медленно или сбой.

Таким образом, ищем легкий текстовый редактор, который не пытается загрузить весь файл сразу, поскольку нас обычно интересует только небольшое подмножество данных, просматривая журналы, которые произошли где-то рядом с определенной временной меткой или затем перескакивая через все строки, зарегистрированные для определенного пользователя с течением времени.

Конечно, это можно было бы решить с помощью инструментов командной строки, скажем, Cygwin или если бы у нас действительно был SSH-доступ к производственным серверам, но мы ищем решение с графическим интерфейсом, которое также могли бы использовать люди, менее разбирающиеся в CLI, когда огромный файл журнала сбрасывается им на колени. .

Ответы (16)

У меня была такая же проблема с журналом MySQL размером более 10 гигабайт, и я нашел 010Editor с помощью этого вопроса в Stack Overflow . Он открыл файл хорошо и быстро. Результаты поиска очень хорошо представлены в нижней части редактора, а поиск огромных файлов происходит на удивление быстро.

Существует бесплатная 30-дневная пробная версия, а цены на расширенное использование можно посмотреть здесь .

Не могли бы вы подробнее рассказать об этом программном обеспечении? Каков ваш опыт? Чем хорош этот инструмент? Взгляните на ответ Джоша ниже, который теперь выглядит великолепно :)
@Angelo Мне больше нечего сказать об этом. Я использовал его в течение пробного периода некоторое время назад, и мой опыт работы с ним уже упоминался в ответе, как и несколько функций, которые я использовал (огромные файлы, отличный поиск).
что с потреблением памяти? Можно ли фильтровать строки? Следить за изменениями и издавать звуковой сигнал, когда что-то меняется? Или, если он не может сделать ничего подобного, это тоже заслуживает внимания.

Вы написали, что приложение только для чтения будет работать. Тогда я настоятельно рекомендую вам попробовать Lister .

Это часть Total Commander , но есть отдельная версия. Это небольшое приложение, которое может очень быстро просматривать действительно огромные файлы. Особенности включены:

  • Распечатать файл
  • Найти в файле (поддерживает поиск RegEx)
  • Различные режимы просмотра и наборы символов (вы можете увидеть на скриншоте)
  • Поддерживает плагины для разных типов файлов и новые функции

Окно листера

Все это в файле ~500 кб. Для скриншота я открыл образ жесткого диска VirtualBox размером 10 Гб. Навигация в файле мгновенная. Поиск строки занял менее 30 секунд до первого попадания в середину файла (полагаю, что это зависит от скорости вашего жесткого диска). И потребление оперативной памяти для этого файла составляет 5,7 Мб.

Я подтверждаю, что это очень хорошо для больших файлов, и я все еще ищу альтернативу с открытым исходным кодом.

Я использую Microsoft Configuration Manager Trace Log Viewer именно для таких задач. Он является частью System Center 2012 R2 Configuration Manager Toolkit (бесплатная загрузка), но как только вы извлечете его, cmtrace.exeон будет весить всего 678 КБ и полностью переносим; вы можете бросить его на любую машину и запустить без установки. Я храню копию на домашнем сетевом диске и на большинстве имеющихся у меня USB-накопителей.

Хотя он входит в состав набора инструментов SCCM, он легко открывает любой текстовый файл. При первом запуске Cmtrace на машине она спросит, хотите ли вы ассоциировать ее с файлами *.log (или нет). Тогда просто есть большое пустое окно, готовое открыть файл журнала.

Он «закрывает» файлы журналов, поэтому вы можете видеть прокручивающиеся данные журнала в реальном времени (но также имеет кнопку паузы, так что вы действительно можете читать быстро движущиеся журналы). Он автоматически выделяет цветом строки с такими ключевыми словами, как «ошибка», «сбой» или «предупреждение», и вы можете настроить его для выделения других ключевых слов.

Хотя я обычно использую его для открытия файлов журналов размером около 1 МБ, в прошлом я часто использовал его для открытия файлов журналов JBoss размером от 500 до 800 МБ без каких-либо проблем.

Это выглядело так многообещающе! Он отлично работает с небольшими файлами журналов. Он даже выделяет строки предупреждений и ошибок. Но я попробовал это с файлом журнала размером 242 МБ, и он так и не ответил. Я повторил тест несколько раз, но он не работал.
Возможно, это работает для лог-файлов, но у меня пишет «не отвечает» в простом текстовом файле размером 33 МБ.
Также известен как Trace32. К сожалению, он намного медленнее, чем другие, такие как BareTail, при загрузке огромных файлов журналов.

Мне нравится использовать LogFusion для этой цели.

Он предназначен для использования с файлами журналов, которые, как правило, представляют собой большинство гигантских текстовых файлов, с которыми я сталкивался. Но я нашел его полезным для всех видов файлов, таких как файлы сценариев базы данных SQL, гигантские файлы CSV, журналы сервера и т. д.

Он открывает файл в конце содержимого файла и загружает небольшое подмножество файла в память. Скорость, с которой он открывает файл, не зависит от размера файла. Сканирование в определенные точки файла с помощью полосы прокрутки выполняется просто и мгновенно. Фильтрация строк по ключевым словам происходит практически мгновенно.

Тем не менее, это действительно сияет для чтения журнала. Он имеет функции, которые помогают при чтении журнала, например, настраиваемый фильтр выделения, который позволяет переключаться между выделенными записями или показывать или скрывать только выделенные записи. Фильтр выделения позволит вам пометить определенного пользователя и показать строки журнала только для него. Тогда вы можете просмотреть их временную шкалу!

Это также позволяет вам иметь живой журнал в окне просмотра, чтобы вы могли наблюдать, как записи журнала появляются по мере их появления. У него есть возможность держать вас в нижней части файла, чтобы вы всегда видели самые новые записи.

Еще одна вещь, которую вы искали, это «легкий вес». В настоящее время у меня загружен файл журнала размером 4 ГБ, а LogFusion.exe занимает в общей сложности 112 МБ памяти. Открывая приложение ничего не загружая, оно начинается с 65мб. Файл LogFusion.exe весит всего 1,6 МБ.

У них есть бесплатная и PRO-лицензия.
http://www.logfusion.ca/Сравнить/

Попробуйте EmEditor (первоначально 40 долларов США; обновления стоят 20 долларов США в год после первого года).

Они выделяют поддержку больших файлов (до 248 ГБ) как одно из своих главных преимуществ.

Я открыл для себя этот редактор совсем недавно, когда искал редактор, который может открывать большие файлы. Раз в месяц или два мне, кажется, нужно просмотреть большой текстовый файл, и я решил, что буду искать свой окончательный инструмент (ы) для этого. В то время у меня был дамп базы данных SQL объемом 52 ГБ, в который я хотел хотя бы заглянуть. Именно тогда я открыл для себя EmEditor, и он впечатляет своей обработкой больших файлов. Я смог довольно легко открыть этот 52-гигабайтный файл. Я даже смог использовать EmEditor, чтобы вырезать разделы файла и «Сохранить как» вырезать текст в новый файл (~ 20 ГБ).

EmEditor с большим файловым контроллером

+1. Я попробовал это, и это действительно хорошо для файлов любого размера.
Я использую его в течение многих лет для редактирования текста. Большой фанат.

Открытый исходный код, но только для чтения: glogg . В отличие от 010 Editor , у него не так много функций (мне не хватает вкладок), но он бесплатный и никогда не зависал на моем компьютере. Кроме того, glogg доступен для Linux и вскоре для Mac OS.

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

+1, это многообещающая часть. (Но обратите внимание, что это будет (v0.99) для файлов со слишком большим количеством строк, чтобы поместиться в его индекс (обычно это несколько файлов размером 100M с очень короткими строками.)
Если вам нравится glogg, попробуйте klogg с klogg.filimonov.dev . Это активно развивающийся форк со множеством новых функций и гораздо более высокой производительностью.
@fav, спасибо, приятно знать!

Вы можете использовать gVIM для Win32:

https://sourceforge.net/projects/portablegvim/

Он использует виртуальный рендеринг и может легко обрабатывать файлы размером более 50 ГБ.
Работает с нашим дампом лог-файла (если у вас возникнут проблемы, отключите подсветку синтаксиса)

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

Ваш журнал состоит из кода TPL, Java и Python? Прохладный!

BareTail (бесплатная версия) достаточно хорош для моих действий по мониторингу журналов:

  • Просмотр файлов в реальном времени
    • Оптимизированный механизм просмотра в реальном времени
    • Просмотр файлов любого размера (> 2GB)
    • Мгновенная прокрутка к любой точке всего файла
    • Просмотр файлов по сети
  • Следуйте хвостовому режиму
  • Хвост нескольких файлов
  • Настраиваемая подсветка
  • Международные наборы символов
  • Многие форматы файлов
  • Один небольшой исполняемый файл, без установщика

и многие другие приятные функции.

Если вам действительно нужен редактор (и не только вьювер), то вам подойдет PilotEdit Lite . Я успешно использовал его для изменения и сохранения файла журнала размером 1,6 ГБ.

Я искал текстовые редакторы, способные просматривать и изменять большие файлы, и мое мнение таково:

Двумя лучшими коммерческими редакторами являются Editpad и Textpad, они используют очень мало памяти и могут просматривать, редактировать и выполнять множество сложных задач, таких как сравнение файлов, подсветка синтаксиса...

EditPad pro
https://www.editpadpro.com/
введите описание изображения здесь

TextPad Pro
https://www.textpad.com/products/textpad/screenshots/index.html
введите описание изображения здесь

Теперь две программы, которые могут работать как обычный редактор, но специально разработаны для работы с файлами csv. Программа может показать файл в виде электронной таблицы. Однако у них не так много возможностей, как у обычного редактора.

EmEditor
https://www.emeditor.com/

У меня были проблемы с этим. Каждые несколько секунд он пытается перезагрузить или изменить форму файла, что не позволяет вам работать должным образом.

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

Разграничить
http://delimitware.com/
введите описание изображения здесь

Все вышеупомянутые программы могут работать с файлами, намного большими, чем память, используя очень мало ресурсов.

Есть много других программ, но большинство из них используют большое количество памяти.

Среди бесплатных редакторов я бы выбрал gvim, его интерфейс может быть не таким удобным для большинства пользователей Windows, но он работает.

gvim x64
введите описание изображения здесьВы можете найти 64-битную версию этого редактора, изначально созданную для Windows, здесь:
https://tuxproject.de/projects/vim/

Kainet
http://www.kainet.ch/Editor-for-very-large-files
Я только что нашел этот новый бесплатный редактор. Это очень просто: поиск и замена, кодификация и не более того. но это очень быстро. Он может открывать очень большие файлы почти мгновенно. Есть только версия для Windows.введите описание изображения здесь

Kainet не может открывать большие текстовые файлы без разрыва строки.

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

По состоянию на июль 2015 года их сайт не работает, поэтому вот ссылка на архив сайта.

  • только для просмотра
  • свободно
  • Окна
  • портативный и легкий (700 КБ)
  • предназначен для просмотра больших (> 1 ГБ) текстовых файлов
  • использует мало памяти и может мгновенно открыть гигабайтный файл (из описания на веб-сайте я могу подтвердить: он использует 4 МБ для файла размером 500 МБ, который загружается менее чем за 5 секунд на моем SSD Crucial M5)

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

+1 Мне нужно было заглянуть в XML-файл размером 2 ГБ, и после того, как я не смог открыть его в других приложениях, это прекрасно справилось с задачей.
У меня возникли проблемы с подключением к "www.swiftgear.com", очевидному источнику этого инструмента.
Хм... www.swiftgear.comдо сих пор не работает.
@RockPaperLizard проклятые мертвые ссылки :/ зеркала: google.com/…
Эууу... ты только что погуглил обо мне! :-o Вот ссылка не из Google: web.archive.org/web/20140814084458/http://www.swiftgear.com
@RockPaperLizard Для удобства для меня и других :) сложнее связать Google с мертвой ссылкой.
Хорошо для отображения, но очень плохо для текстового поиска: для того же поиска расчетное время: "21 час" для LTFViewer, тогда как 1 или 2 минуты с wxHexEditor!
Возможно, это работает для файлов журналов, но у меня пишет «не отвечает» в простом текстовом файле размером 2,5 МБ без разрыва строки.

Notepad++ 7 также доступен в виде 64-битной сборки, и я протестировал его на файле размером более 3 ГБ: учитывая размер файла, он отлично справляется со своей задачей.

Даже если это редактор файлов и немного медленнее, чем инструмент только для чтения, не все бесплатные для коммерческого использования инструменты поддерживают поиск с помощью регулярных выражений.

Он также поддерживает мониторинг журнала (хвост -f).

https://notepad-plus-plus.org/download/

Даже с 64-битной версией я получаю сообщение «Файл слишком велик для открытия в Notepad++» для файла размером 7 ГБ.
Пожалуйста, помните, что Notepad++ — это редактор, и возможность открывать огромные файлы — неожиданный бонус. При этом журнал изменений 8.3 содержит, Remove 2GB file open restriction for x64 binaryно я не смог найти никаких упоминаний об объеме памяти, необходимом в зависимости от размера файла.
Я пробовал с NPP 8.3 @alexandrul, и я действительно получаю новое диалоговое окно: Opening a huge file of 2GB+ could take several minutesно затем, после принятия, у меня все еще есть «Файл слишком велик для открытия» для файла размером 7 ГБ. Может быть, есть возможность открыть его в режиме только для чтения?
Вы можете попробовать разделить файл на более мелкие части, пока Notepad ++ не сможет их открыть (начните с ограничения 2 ГБ, а затем перейдите к 3 ГБ, 4 ГБ, ...). Если вы также будете следить за объемом свободной памяти, вы сможете выяснить, сколько памяти вам понадобится, чтобы открыть весь файл размером 7 ГБ.

Если вы ищете только читателя:

HTMLPen.com — это бесплатный онлайн-инструмент, который может мгновенно открывать очень большие файлы (ТБ+), выполнять поиск по регулярным выражениям , подсчитывать и экспортировать совпадения . Вам не нужно ничего скачивать. Работает на любой ОС с современным браузером. Он также имеет подсветку синтаксиса, если вы открываете файл данных или код.

Я использовал бесплатный baretail в течение очень долгого времени, но мне всегда не хватало некоторых функций.

Поэтому я написал еще один просмотрщик логов: loxx . Он поддерживает просмотр и фильтрацию в реальном времени, огромные и множественные представления, регулярные выражения в фильтрах и поиске, разделенные представления и многое другое.

Так что попробуйте - любые отзывы и идеи приветствуются!

С помощью ultraedit вы можете открывать и редактировать большие файлы. У него есть режим, в котором вы можете указать ему не создавать временный файл резервной копии.

wxHexEditor (почти) идеален для этого.

  • Без проблем открывает файлы размером более 10 ГБ.

  • Очень быстрый текстовый поиск: ~1 минута для поиска шаблона в файле размером 10 ГБ, в то время как с другим инструментом, который я пробовал (LTFViewer), требуется 21 час.

  • Единственный недостаток: я не нашел возможности отображать текст с новой строкой как обычный текст. Только шестнадцатеричный вид и правая панель предпросмотра строки:

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

    Здесь было бы интересно, чтобы он отображался как:

    hello
    world
    

    в другом представлении, чем представление "Hex".


Для меня Notepad ++ не работает: даже с 64-битной версией я получаю «Файл слишком велик для открытия Notepad ++» для файла размером 7 ГБ.