it-swarm.com.ru

Текстовый редактор для открытия больших (гигантских, огромных, больших) текстовых файлов

Я имею в виду более 100 МБ; такие текстовые файлы могут раздвинуть конверты редакторов.

Мне нужно просмотреть большой файл XML, но не могу, если редактор глючит.

Какие-либо предложения?

1023
Yuvi

VS Code (Windows, macOS, Linux) - Бесплатный и открытый исходный код с приятным графическим интерфейсом. Отредактировал 3,6 ГБ файл JSON, загруженный за минуту. У вас должно быть достаточно RAM для загрузки файлов.

Свободные читатели только для чтения:

  • glogg (Windows, macOS, Linux) - Подтверждено для обработки файлов размером в несколько ГБ. Его главная особенность - поиск по регулярным выражениям. Имеет вкладки, читает файлы прямо с диска, может просматривать/отслеживать файлы и позволяет пользователю отмечать строки.
  • LogExpert (Windows) - "Замена графического интерфейса для tail." Поддерживает отслеживание файлов, поиск, фильтрацию, настраиваемую подсветку, плагины и внешние инструменты.
  • Средство просмотра больших текстовых файлов (Windows) - Минималистичный и имеет очень маленький размер исполняемого файла. Поддерживает разделение, настройку текстовых тем, поиск по регулярным выражениям и отслеживание файлов.
  • Lister (Windows) - еще более маленький и минималистичный. Это один исполняемый файл, всего 500 КБ, но он все еще поддерживает поиск (с регулярными выражениями), печать, режим шестнадцатеричного редактора и настройки.

Бесплатные редакторы:

  • Vim и Emacs (Windows, macOS, Linux) - классические редакторы Unix , Крутая кривая обучения, но брутально эффективная. У них есть настройки, которые можно настроить, чтобы сделать их еще быстрее.
  • Редактор больших файлов (Windows) - Открывает и редактирует файлы TB +, поддерживает Unicode, использует мало памяти, имеет специфичные для XML функции и включает в себя двоичный режим.
  • HxD (Windows) - шестнадцатеричный редактор, а не текстовый редактор; но это удивительно быстро и полезно.
  • GigaEdit (Windows) - Поддерживает поиск, статистику символов и настройку шрифтов. Но он глючит - с большими файлами он позволяет только перезаписывать символы, а не вставлять их; он не уважает LF как терминатор строки, только CRLF; и это медленно.

Встроенные программы (установка не требуется):

  • less (macOS, Linux) - традиционный инструмент подкачки командной строки Unix. Позволяет просматривать текстовые файлы практически любого размера. Может быть установлен на Windows, тоже.
  • Блокнот (Windows) - Достойный с большими файлами, особенно с отключенной переносом Word.
  • ЕЩЕ (Windows) - это относится к MORE для Windows, а не more для Unix. Консольная программа, позволяющая просматривать файл по одному экрану за раз.

Веб-зрители:

  • htmlpen.com - Может открывать и выделять синтаксис TB + файлы. Позволяет редактировать, кроме очень больших файлов. Поддерживает поиск, регулярные выражения и экспорт.
  • readfileonline.com - Еще одна программа просмотра больших HTML5-файлов. Поддерживает поиск.

Платные редакторы:

  • 010 Editor (Windows, macOS, Linux) - открывает гигантские (до 50 ГБ) файлы.
  • SlickEdit (Windows, macOS, Linux) - открывает большие файлы.
  • UltraEdit (Windows, macOS, Linux) - открывает файлы размером более 6 ГБ, но для этого необходимо изменить конфигурацию чтобы быть практичным: Меню "Дополнительно" Конфигурация "Обработка файлов" Временные файлы "Открыть файл без временного файла ...
  • EmEditor (Windows) - Прекрасно обрабатывает очень большие текстовые файлы (официально до 248 ГБ, но до 900 ГБ согласно к одному отчету).

И, наконец, вы пытались открыть большой файл с помощью обычного редактора? Некоторые редакторы могут обрабатывать достаточно большие файлы. В частности, Блокнот ++ (Windows) и Sublime Text (Windows, macOS, Linux) файлы поддержки в диапазоне 2 ГБ.

1272
Nick Ryberg

Секреты и уловки

меньше

Почему вы используете редакторы , чтобы просто посмотреть на (большой) файл?

Под * nix или Cygwin просто используйте меньше . (Существует известная поговорка - "меньше - это больше, больше или меньше" - потому что "меньше" заменило более раннюю команду Unix "больше", с добавлением, которое вы можете прокрутить обратно вверх.) Поиск и навигация в разделе "меньше" очень похожа на Vim, но нет файла подкачки и используется немного RAM.

Существует порт Win32 на GNU меньше. Смотрите раздел "меньше" ответа выше.

Perl

Perl хорош для быстрых сценариев, а его оператор .. (range flip-flop) позволяет использовать механизм выбора Nice, чтобы ограничить число, через которое вы должны пройти.

Например:

$ Perl -n -e 'print if ( 1000000 .. 2000000)' humongo.txt | less

Это извлечет все из строки 1 млн. В строку 2 млн. И позволит вам отсеять вывод вручную за меньшее.

Другой пример:

$ Perl -n -e 'print if ( /regex one/ .. /regex two/)' humongo.txt | less

Он начинает печатать, когда "регулярное выражение одно" что-то находит, и останавливается, когда "регулярное выражение два" находит конец интересного блока. Может найти несколько блоков. Просеять вывод ...

logParser

Это еще один полезный инструмент, который вы можете использовать. Цитировать статья в Википедии :

logparser - это гибкая утилита командной строки, которая была изначально написана Габриэле Джузеппини, сотрудником Microsoft, для автоматизации тестов для ведения журнала IIS. Он был предназначен для использования с операционной системой Windows и был включен в IIS 6.0 Resource Kit Tools. Поведение logparser по умолчанию работает как "конвейер обработки данных", принимая выражение SQL в командной строке и выводя строки, содержащие совпадения для выражения SQL.

Microsoft описывает Logparser как мощный и универсальный инструмент, который обеспечивает универсальный доступ к запросам к текстовым данным, таким как файлы журналов, файлы XML и CSV, а также к ключевым источникам данных в операционной системе Windows, таким как журнал событий, реестр, файловая система и Active Directory. Результаты входного запроса могут быть отформатированы в текстовом формате или сохранены в более специализированных целях, таких как SQL, SYSLOG или диаграмма.

Пример использования:

C:\>logparser.exe -i:textline -o:tsv "select Index, Text from 'c:\path\to\file.log' where line > 1000 and line < 2000"
C:\>logparser.exe -i:textline -o:tsv "select Index, Text from 'c:\path\to\file.log' where line like '%pattern%'"

Относительность размеров

100 МБ не так уж много. 3 ГБ становится большим. Раньше я работал в отделе печати и почты, который создавал около 2% почты первого класса в США. Одна из систем, в которой я был техническим руководителем, составляла около 15% почтовых отправлений. У нас было несколько больших файлов для отладки здесь и там.

И больше...

Не стесняйтесь добавлять больше инструментов и информации здесь. Этот ответ является вики сообщества по причине! Нам всем нужно больше советов по работе с большими объемами данных ...

181
Roboprog