1022 votes

Éditeur de texte pour ouvrir les gros (énormes, énormes, gros) fichiers texte

Je veux dire 100+ Mo de taille ; de tels fichiers texte peuvent pousser l'enveloppe des éditeurs.

J'ai besoin de consulter un gros fichier XML, mais je ne peux pas le faire si l'éditeur est bogué.

Des suggestions ?

166 votes

En fait, les fichiers texte de plus de 100 Mo, voire de plus de 1 Go, ne sont pas aussi rares que vous le pensez (par exemple, les fichiers journaux de serveurs très fréquentés).

15 votes

Sneakyness : Et pas exactement du texte. Je pense que les exigences de la lecture des fichiers texte et de la lecture des fichiers binaires diffèrent quelque peu. Vous pouvez le passer par base64 ou uuencode, cependant.

0 votes

En 1995, j'ai utilisé WinWord pour ouvrir des fichiers de 64 Mo sur une machine de 16 Mo. Je suis sûr qu'il ferait tout aussi bien 15 ans plus tard.

1649voto

Nick Points 788

Visionneuses gratuites en lecture seule :

  • Visualiseur de fichiers texte volumineux (Windows) - Thèmes entièrement personnalisables (couleurs, polices, habillage des mots, taille des onglets). Supporte la vue divisée horizontale et verticale. Supporte également le suivi de fichier et la recherche regex. Très rapide, simple, et a une petite taille d'exécutable.
  • klogg (Windows, macOS, Linux) - Un fork maintenu de gant Sa principale caractéristique est la recherche par expression régulière. Il peut également surveiller des fichiers, permet à l'utilisateur de marquer des lignes et intègre de sérieuses optimisations. Mais du point de vue de l'interface utilisateur, il est laid et maladroit.
  • LogExpert (Windows) - "Un remplacement de l'interface graphique pour tail ." Il s'agit en fait d'un analyseur de fichiers journaux, et non d'une visionneuse de gros fichiers. Lors d'un test, il a fallu 10 secondes et 700 Mo de RAM pour charger un fichier de 250 Mo. Mais ses principales fonctionnalités sont le columnizer (analyse des journaux au format CSV, JSONL, etc. et affichage dans un format de feuille de calcul) et le highlighter (affichage des lignes contenant certains mots dans certaines couleurs). Il prend également en charge le suivi des fichiers, les onglets, les fichiers multiples, les signets, la recherche, les plugins et les outils externes.
  • Lister (Windows) - Très petit et minimaliste. Il s'agit d'un seul exécutable, d'à peine 500 Ko, mais il prend en charge la recherche (avec des regex), l'impression, un mode éditeur hexagonal et les paramètres.
  • loxx (Windows) - Supporte le suivi de fichiers, la mise en évidence, les numéros de ligne, les fichiers volumineux, les expressions rationnelles, les fichiers et vues multiples, et bien plus encore. La version gratuite ne peut pas : traiter les expressions rationnelles, filtrer les fichiers, synchroniser les horodatages et enregistrer les fichiers modifiés.

Rédacteurs libres :

  • Votre éditeur ou IDE habituel. Les éditeurs modernes peuvent gérer des fichiers étonnamment volumineux. En particulier, Vim (Windows, macOS, Linux), Emacs (Windows, macOS, Linux), Notepad++ (Windows), Texte sublime (Windows, macOS, Linux), et Code VS (Windows, macOS, Linux) prennent en charge les fichiers volumineux (~4 Go), à condition que vous disposiez de la RAM nécessaire.
  • Éditeur de fichiers volumineux (Windows) - Ouvre et édite les fichiers TB+, supporte l'Unicode, utilise peu de mémoire, possède des fonctionnalités spécifiques à XML et inclut un mode binaire.
  • GigaEdit (Windows) - Supporte la recherche, les statistiques de caractères et la personnalisation des polices. Mais il est bogué - avec les gros fichiers, il ne permet que l'écrasement des caractères, pas leur insertion ; il ne respecte pas LF comme terminateur de ligne, seulement CRLF ; et il est lent.

Programmes intégrés (aucune installation requise) :

  • moins (macOS, Linux) - L'outil traditionnel de pagination en ligne de commande Unix. Vous permet de visualiser des fichiers texte de pratiquement n'importe quelle taille. Peut également être installé sous Windows.
  • Bloc-notes (Windows) - Décent avec les gros fichiers, surtout si le retour à la ligne est désactivé.
  • PLUS (Windows) - Il s'agit de l'application Windows MORE et non le système Unix more . Un programme de console qui vous permet de visualiser un fichier, un écran à la fois.

Les spectateurs du Web :

  • readfileonline.com - Un autre visualisateur de fichiers volumineux HTML5. Supporte la recherche.

Rédacteurs rémunérés :

  • 010 Éditeur (Windows, macOS, Linux) - Ouvre des fichiers géants (jusqu'à 50 Go).
  • SlickEdit (Windows, macOS, Linux) - Ouvre des fichiers volumineux.
  • UltraEdit (Windows, macOS, Linux) - Ouvre les fichiers de plus de 6 Go, mais la configuration doit être modifiée pour que cela soit pratique : Menu " Avancé " Configuration " Gestion des fichiers " Fichiers temporaires " Ouvrir un fichier sans fichier temporaire...
  • EmEditor (Windows) - Gère bien les très gros fichiers texte (officiellement jusqu'à 248 Go, mais jusqu'à 900 Go selon un rapport).
  • BssEditor (Windows) - Traite les fichiers volumineux et les lignes très longues. Ne nécessite pas d'installation. Gratuit pour une utilisation non commerciale.

63 votes

VIM, ou Emacs... choisissez votre poison, les deux géreront n'importe quel fichier que vous leur enverrez. Je préfère personnellement Emacs, mais les deux battent le bloc-notes sans le moindre problème.

28 votes

Emacs a une taille maximale de tampon, qui dépend de l'architecture sous-jacente (32 ou 64 bits). Je pense que sur les systèmes 32 bits, vous obtenez l'erreur "taille maximale du tampon dépassée" sur les fichiers de plus de 128 Mo.

108 votes

Je viens d'essayer Notepad++ avec un fichier journal de 561 Mo et il a dit qu'il était trop gros.

215voto

Roboprog Points 2005

Conseils et astuces

moins

Pourquoi utilisez-vous éditeurs à juste regardez à un (gros) fichier ?

Sous *nix ou Cygwin il suffit d'utiliser moins . (Il y a un célèbre dicton - "less is more, more or less" - parce que "less" a remplacé l'ancienne commande Unix "more", avec l'ajout que vous pouviez faire défiler vers le haut). La recherche et la navigation sous less est très similaire à Vim, mais il n'y a pas de fichier d'échange et peu de RAM utilisée.

Il existe un portage Win32 de GNU less. Voir la section "less" de la réponse ci-dessus.

Perl

Perl est bon pour les scripts rapides, et son .. (bascule de gamme) permet de mettre en place un mécanisme de sélection efficace pour limiter le nombre d'erreurs à éviter.

Par exemple :

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

Cela permettra d'extraire tout ce qui se trouve entre la ligne 1 million et la ligne 2 millions, et vous permettra de passer la sortie manuellement en moins.

Un autre exemple :

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

L'impression commence lorsque l'"expression régulière un" trouve quelque chose, et s'arrête lorsque l'"expression régulière deux" trouve la fin d'un bloc intéressant. Elle peut trouver plusieurs blocs. Passez la sortie au crible...

analyseur de journaux

C'est un autre outil utile que vous pouvez utiliser. Pour citer l'article de Wikipedia :

analyseur de journaux est un utilitaire de ligne de commande flexible qui a été initialement écrit par Gabriele Giuseppini, un employé de Microsoft, pour automatiser les tests de journalisation d'IIS. Il était destiné à être utilisé avec le système d'exploitation Windows et était inclus dans les outils du kit de ressources IIS 6.0. Le comportement par défaut de logparser fonctionne comme un "pipeline de traitement de données", en prenant une expression SQL sur la ligne de commande, et en sortant les lignes contenant des correspondances pour l'expression SQL.

Microsoft décrit Logparser comme un outil puissant et polyvalent qui fournit un accès universel aux données textuelles telles que les fichiers journaux, les fichiers XML et les fichiers CSV, ainsi qu'aux principales sources de données du système d'exploitation Windows telles que le journal des événements, le registre, le système de fichiers et Active Directory. Les résultats de la requête d'entrée peuvent être formatés de manière personnalisée dans une sortie texte, ou ils peuvent être persistés dans des cibles plus spécialisées comme SQL, SYSLOG ou un graphique.

Exemple d'utilisation :

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%'"

La relativité des tailles

100 Mo n'est pas trop grand. 3 Go, ça devient un peu gros. Je travaillais dans un centre d'impression et de courrier qui créait environ 2 % du courrier de première classe des États-Unis. L'un des systèmes pour lequel j'étais le responsable technique représentait environ 15+% des pièces de courrier. Nous avions quelques gros fichiers à déboguer ici et là.

Et plus encore...

N'hésitez pas à ajouter d'autres outils et informations ici. Cette réponse est un wiki communautaire pour une raison ! Nous avons tous besoin de plus de conseils pour gérer de grandes quantités de données...

9 votes

+1, j'ai récemment eu quelques fichiers xml vraiment énormes (+1 gigaoctet) que j'avais besoin de regarder. Je suis sous Windows et à la fois vim, emacs, notepad++ et plusieurs autres éditeurs ont complètement étouffé le fichier au point que mon système est presque devenu inutilisable en essayant d'ouvrir le fichier. Après un certain temps, j'ai réalisé à quel point il était inutile d'essayer d'ouvrir le fichier dans un éditeur alors que j'avais juste besoin de le visualiser. En utilisant cygwin (et une astucieuse magie grep/less/sed), j'ai facilement trouvé la partie qui m'intéressait et j'ai pu la lire sans problème.

0 votes

Cygwin's less fonctionne pour visualiser un fichier > 2GB doux

8 votes

Vous n'avez pas besoin de cygwin pour moins, vous pouvez aussi l'utiliser sous Windows : gnuwin32.sourceforge.net/packages/moins.htm

60voto

Gil Milow Points 160

J'ai découvert que UltraEdit (non-libre) fait assez bien le chargement de gros fichiers texte (y compris XML).

44voto

b3. Points 5040

Je vote pour EditPad . Il existe une version légère et une version professionnelle, sans grande différence entre elles. J'ouvre régulièrement des fichiers de plus de 100 Mo. De plus, il vous permet de sélectionner des colonnes de texte !

Maintenant EditPad Lite il est gratuit pour un usage personnel. Il ouvre instantanément les fichiers texte volumineux.

44voto

whichdan Points 1168

J'ai utilisé EmEditor (non libre), et il gère sans problème les fichiers texte volumineux (des centaines de Mo et plus).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X