Как открывать большие файлы

Обновлено: 21.11.2024

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

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

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

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

На самом деле текстовые файлы размером более 100 МБ или даже более 1 ГБ не так уж редки, как вы думаете (например, файлы журналов с загруженных серверов).

Скрытность: И не совсем текст. Я думаю, что требования чтения текстовых файлов и чтения двоичных файлов несколько различаются. Однако вы можете передать его через base64 или uuencode.

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

@BlairHippo Я чувствую то же самое, я почти нервничаю, когда задаю вопрос, потому что высока вероятность того, что кто-то скажет: «Закройте это, вместо этого это должно быть отправлено в WhateverExchange»

2 ответа 2

Бесплатные программы просмотра только для чтения:

    (Windows) — полностью настраиваемые темы (цвета, шрифты, перенос слов, размер табуляции). Поддерживает горизонтальный и вертикальный разделенный вид. Также поддерживает отслеживание файлов и поиск по регулярным выражениям. Очень быстрый, простой и имеет небольшой размер исполняемого файла. (Windows, macOS, Linux) — поддерживаемый форк glogg. Его главная особенность — поиск по регулярным выражениям. Он поддерживает мониторинг изменений файлов (например, tail ), закладки, выделение шаблонов разными цветами и имеет встроенную серьезную оптимизацию. Но с точки зрения пользовательского интерфейса это довольно минимально. (Windows) — «Графический интерфейс для замены хвоста». Это действительно анализатор лог-файлов, а не просмотрщик больших файлов, и в одном тесте для загрузки 250-мегабайтного файла потребовалось 10 секунд и 700 МБ ОЗУ. Но его отличительными особенностями являются средство создания колонок (разбор журналов в формате CSV, JSONL и т. д. и отображение в формате электронной таблицы) и выделение (показ строк с определенными словами определенным цветом). Также поддерживает отслеживание файлов, вкладки, мультифайлы, закладки, поиск, плагины и внешние инструменты. (Windows) — очень маленький и минималистичный. Это один исполняемый файл, едва ли 500 КБ, но он по-прежнему поддерживает поиск (с регулярными выражениями), печать, режим шестнадцатеричного редактора и настройки.
  • Ваш обычный редактор или IDE. Современные редакторы могут работать с удивительно большими файлами. В частности, Vim (Windows, macOS, Linux), Emacs (Windows, macOS, Linux), Notepad++ (Windows), Sublime Text (Windows, macOS, Linux) и VS Code (Windows, macOS, Linux) поддерживают большие (~ 4 ГБ), если у вас есть ОЗУ. (Windows) — открывает и редактирует файлы TB+, поддерживает Unicode, использует мало памяти, имеет функции, специфичные для XML, и включает двоичный режим. (Windows) — поддерживает поиск, статистику символов и настройку шрифта. Но глючит — с большими файлами позволяет только перезаписывать символы, а не вставлять их; он не рассматривает LF как признак конца строки, только CRLF; и это медленно.

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

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

VIM или Emacs. выберите свой яд, оба справятся с любым файлом, который вы им бросите. Лично я предпочитаю Emacs, но оба они без труда справятся с блокнотом.

Emacs имеет максимальный размер буфера, зависящий от базовой архитектуры (32 или 64 бита). Я думаю, что в 32-битных системах вы получите сообщение об ошибке «превышен максимальный размер буфера» для файлов размером более 128 МБ.

@Рафал Интересно! Похоже, на 64-битной версии это ~ 1024 петабайта. Причина связана с тем, что emacs должен отслеживать позиции в буфере (например, точку)

Но будьте осторожны, vim будет работать только до тех пор, пока в рассматриваемых файлах достаточно разрывов строк. Однажды мне пришлось отредактировать файл ca. Файл размером 150 МБ без разрывов строк, и пришлось прибегнуть к gedit, потому что vim не мог с этим справиться.

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

Под *nix или Cygwin просто используйте меньше. (Есть известная поговорка — «меньше значит больше, больше или меньше» — потому что «меньше» заменило более раннюю команду Unix «больше» с добавлением того, что вы можете прокручивать назад.) Поиск и навигация в разделе «меньше» очень похожи на Vim, но нет файла подкачки и используется мало оперативной памяти.

Есть порт GNU на Win32 меньше. См. раздел «меньше» в ответе выше.

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

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

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

анализатор журнала

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

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

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

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

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

И многое другое.

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

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

"Откуда берутся все эти данные?"

  1. За последние два года люди создали больше данных, чем за всю историю человечества. К 2020 году каждую секунду будут создаваться новые данные для каждого человека на планете.
  2. К 2025 году объем всех данных на Земле вырастет с сегодняшних 4,4 зеттабайт до примерно 175 зеттабайт. Это 44 триллиона гигабайт
  3. .
  4. Для средней компании из списка Fortune 1000 повышение доступности данных на 10 % принесет им более 65 млн долларов дополнительной чистой прибыли.

"Как программист или ИТ-специалист получает доступ к этим большим файлам и извлекает важную информацию?"

Люди спрашивают, как снова и снова открывать большие текстовые файлы на таких сайтах, как Stack Overflow. Несмотря на то, что это довольно распространенный вопрос, на него практически нет удовлетворительных ответов. Итак, мы написали этот блог, чтобы рассказать о различных вариантах, которые у вас есть, когда вы сталкиваетесь с большим файлом, а также о плюсах и минусах каждого из них.

Решение 1. Загрузите специальную программу для просмотра больших файлов

В Windows есть предустановленная программа, которая может открывать текстовые файлы любого размера. Он называется WordPad.

  • Если все, что вам нужно сделать, это просмотреть большой файл, это самый эффективный способ
  • Это самый быстрый способ, если вы редко сталкиваетесь с большими файлами.
  • Это совершенно бесплатно
  • Вам нужно загрузить совершенно новую программу, и вы добавляете дополнительную программу в свой рабочий процесс всякий раз, когда вам нужно открыть большой файл
  • Вы не можете вносить какие-либо изменения в файл

Примечание. UltraEdit также является средством просмотра больших файлов, и вы можете вносить изменения в файл — мы скоро рассмотрим это.

Решение 2. Разделите большой файл на более мелкие фрагменты

Если ваш текстовый редактор не может открыть текстовый файл размером 2 ГБ, вместо этого вы можете разделить его на 20 текстовых файлов по 200 МБ. Ваш компьютер сохранит только что сегментированные фрагменты в аккуратной маленькой папке, где вы сможете просмотреть их по одному, отредактировать или найти нужную информацию.

В Mac и Linux есть встроенная команда (split), которую вы можете ввести в терминал, чтобы сегментировать файлы в соответствии с указанными вами правилами. В Windows вам придется скачать программу, которая сделает это за вас. К счастью, большинство из них бесплатны (например, HJ Split, самый популярный инструмент для этой цели).

  • Разделенные файлы можно легко собрать вместе с помощью команды cat (на Mac и Linux)
  • У вас есть полный контроль над разделением файла.
  • Этот метод избавляет вас от необходимости загружать новую программу, которая усложняет рабочий процесс (на Mac и Linux)
  • Это совершенно бесплатно
  • Чтобы сделать что-то одно, вам нужно загрузить новую программу, и она не совсем подходит для вашего рабочего процесса (в Windows)
  • Разбиение файлов затрудняет поиск определенной части информации.
  • Если вам нужно в конечном итоге собрать информацию воедино, это не решит проблему.

Решение 3. Получите текстовый редактор, который изначально обрабатывает большие файлы

Если вы читали ветки Stack Overflow, которые мы опубликовали выше, вы знаете, что люди неизбежно отвечают на вопрос примерами текстовых редакторов, которые делают открытие таких больших файлов. Ну, большие файлы до некоторого порога.

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

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

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

  • Переключившись на редактор, который может работать с большими файлами, вы решили проблему. Навсегда.
  • При переключении текстовых редакторов требуется небольшое обучение (но UltraEdit предлагает профессиональную внутреннюю группу поддержки, готовую ответить на любые ваши вопросы).

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

Если у вас есть методы открытия больших файлов, которые мы здесь не рассмотрели, сообщите нам об этом на Facebook! Мы с нетерпением ждем вашего ответа!

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

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

Ни Блокнот, ни Wordpad не открывают очень большие текстовые файлы, и даже любимые сторонние альтернативы, такие как Notepad++, не откроют их, как только размер файла достигнет определенного порога.

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

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

Программы для открытия больших текстовых файлов в Windows

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

    EditPad Lite — имеет ограничение в 2 гигабайта, но поддерживает просмотр и редактирование.

EditPad Lite

Эмредактор

Глогг

Просмотрщик больших текстовых файлов

Универсальное средство просмотра

Бесплатная версия 5.5.6.2

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

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

Заключительные слова

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

Теперь вы: Какой текстовый редактор вы используете в основном? Знаете другую программу просмотра или редактора текста, способную загружать большие файлы?

MS Excel может отображать 1 048 576 строк. Хотя при обычном использовании это может показаться очень большим числом, во многих случаях этого недостаточно.

Просматриваете ли вы файлы журналов или большие наборы данных, легко найти файлы CSV с миллионами строк или огромные текстовые файлы. Поскольку Excel не может поддерживать такие большие файлы, как именно вы их открываете? Давайте узнаем.

Почему обычные текстовые редакторы не могут открывать действительно большие файлы?

Компьютер имеет гигабайты памяти, так почему текстовые редакторы не могут открывать большие файлы?

Здесь действуют два фактора. Некоторые приложения имеют жестко запрограммированное ограничение на объем данных, которые они могут отображать. Неважно, сколько памяти у вашего ПК, они просто не будут ее использовать.

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

Лучший способ просматривать очень большие текстовые файлы — использовать… текстовый редактор. Не просто текстовый редактор, а инструменты, предназначенные для написания кода. Такие приложения обычно могут без проблем обрабатывать большие файлы и являются бесплатными.

Просмотрщик больших текстовых файлов, вероятно, является самым простым из этих приложений. Он действительно прост в использовании, работает быстро и требует очень мало ресурсов. Единственный минус? Он не может редактировать файлы. Но если вы хотите просматривать только большие CSV-файлы, это лучший инструмент для работы.

Чтобы редактировать большие текстовые файлы, попробуйте Emacs. Первоначально созданный для систем Unix, он отлично работает и в Windows и может работать с большими файлами. Точно так же Neovim и Sublime Text — это две облегченные IDE, которые можно использовать для открытия текстовых файлов CSV размером в гигабайты.

Если все, что вам нужно, — это поиск данных в больших файлах журналов, то klogg — это именно то, что вам нужно. Это приложение, являющееся обновленной версией популярного glogg, позволяет с легкостью выполнять сложные операции поиска в огромных текстовых файлах. Поскольку файлы журналов, созданные компьютером, часто могут содержать миллионы строк, klogg предназначен для работы с файлами такого размера без каких-либо проблем.

Вся проблема с попыткой открыть большие CSV-файлы заключается в том, что они слишком велики. Но что, если вы разделите их на несколько файлов меньшего размера?

Это популярное решение, так как обычно не нужно изучать интерфейс нового текстового редактора. Вместо этого вы можете использовать один из множества разделителей CSV, доступных в Интернете, чтобы разбить большой файл на несколько файлов, которые легко открыть. После этого к каждому из этих файлов можно получить доступ в обычном режиме.

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

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

SQL — наиболее распространенный язык разметки баз данных, используемый в наши дни. Существует множество используемых версий SQL, но, вероятно, самой простой из них является MySQL. И, как назло, файл CSV можно преобразовать в таблицу MySQL.

Это ни в коем случае не самый простой способ работы с большими CSV-файлами, поэтому мы рекомендуем его только в том случае, если вы хотите регулярно работать с большими наборами данных. Если MySQL кажется слишком сложным, вы всегда можете вместо этого импортировать файлы .csv в MS Access.

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

Так почему бы не написать код Python именно для этого?

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

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

А как насчет специализированных приложений? Неужели нет приложений, созданных для решения этой проблемы?

На самом деле есть. CSV Explorer, например, основывается на том самом процессе, который мы описали в последних двух методах (база данных SQL и код Python), для создания приложения, способного просматривать и редактировать CSV-файлы любого размера. Вы можете делать все, что ожидаете от инструмента для работы с электронными таблицами, например создавать графики или фильтровать данные в CSV Explorer.

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

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

Как лучше всего открывать большие текстовые и CSV-файлы?

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

Если все, что вам нужно, — это просматривать такие файлы, то средство просмотра больших текстовых файлов — лучший выбор для вас. Для их фактического редактирования вы можете попробовать многофункциональный текстовый редактор, такой как Emacs, или воспользоваться инструментом премиум-класса, таким как CSV Explorer.

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

Левин Рой – инженер-программист, который любит писать о технологиях. Будь то советы и рекомендации по Windows или подробные руководства по разработке приложений, Левин использует свой практический опыт и технические навыки для создания статей, которые помогут решить сложные проблемы. Прочитать полную биографию Левина

Понравился ли вам этот совет? Если это так, загляните на наш собственный канал на YouTube, где мы рассказываем о Windows, Mac, программном обеспечении и приложениях, а также предлагаем множество советов по устранению неполадок и видео с практическими рекомендациями. Нажмите кнопку ниже, чтобы подписаться!

Читайте также: