Éditeur de texte pour éditer un fichier texte brut volumineux (4,3 Go)


87

Existe-t-il un éditeur de texte capable de modifier ce fichier?

J'ai essayé:

  • gedit
  • kate
  • nano
  • vim
  • mcedit

sans succès.


8
Avez-vous besoin de le modifier ou simplement de le visualiser? Dans ce dernier cas, vous pouvez simplement utiliser "moins" à partir de la CLI.
M. Shunz

3
@ MrShunz: oui, je veux éditer le fichier. @Bakhtiyor: la réponse est "OUI" :)
cupakob

2
Je vous recommande de modifier votre question en mentionnant le fait que vous souhaitez modifier le fichier. Cela ferait en sorte que les gens n'auraient pas à chercher dans les commentaires pour comprendre votre question et / ou si votre question est assez similaire à celle qu'ils ont.
Plume de feu

1
Par hasard essayez-vous d'ouvrir le fichier de base de 42 bomb zip? J'ai eu ce problème et j'ai trouvé qu'un programme appelé "éditeur 010" fonctionnait bien

En relation avec le débordement de pile: Travailler avec d'énormes fichiers sous Linux
Eliah Kagan

Réponses:


81

Une autre méthode consiste à utiliser split. Divisez le fichier en 8 morceaux et manipulez les fichiers avec un éditeur. Après cela, vous réassemblez les fichiers à nouveau.

split -b 53750k <your-file>

cat xa* > <your-file>


SYNOPSIS
       split [OPTION]... [INPUT [PREFIX]]

-a, --suffix-length=N
              use suffixes of length N (default 2)

       -b, --bytes=SIZE
              put SIZE bytes per output file

       -C, --line-bytes=SIZE
              put at most SIZE bytes of lines per output file

       -d, --numeric-suffixes
              use numeric suffixes instead of alphabetic

       -l, --lines=NUMBER
              put NUMBER lines per output file

cela semble être la meilleure solution pour le moment ...
cupakob

9
Notez que de nombreux éditeurs ajouteront un caractère de nouvelle ligne à la fin de votre fichier modifié et le feront sans vous en informer! Pour plus d'informations, voir Comment arrêter Gedit, Gvim, Vim, Nano d'ajouter le caractère de fin de ligne de fin de fichier? askubuntu.com/q/20871/2670
Peter.O

belle façon ... et puis vous devriez utiliser vim avec les parties simples ... Je déteste vim: P mais il gagne tous les autres rédacteurs ici
Postadelmaga

1
@ Peter.O: Le lien a-t-il changé? J'ai du mal à trouver des informations sur le problème de caractère de nouvelle ligne à cette adresse URL. : / Mise à jour: vous avez
rinogo

3
(En bref, utilisez nano --nonewlinespour éviter l'ajout automatique de nouvelles lignes)
rinogo

39

Essayez joe . Je viens de l'utiliser pour éditer un fichier de vidage SQL ~ 5G. Il a fallu environ une minute pour ouvrir le fichier et quelques minutes pour le sauvegarder, avec très peu d’utilisation de swap (sur un système disposant de 4G de RAM).


Cela a bien fonctionné pour moi d'éditer un fichier XML de 1 Go.
digitaljoel

Fonctionne bien avec les fichiers de 2 Go
Damir Olejar

Essayé sur un fichier de vidage SQL 14G, mais a échoué avec une erreur IO. (La machine a 3 Go de RAM et 3 Go de swap).
Tehwalrus

1
Hou la la! "Joe" passe - où beaucoup de crash!
1111161171159459134

a donné à Joe un fichier de 4,6 Go, et que rien ne s'est passé pendant quelques minutes. Abandonné, Hex Fiend l'ouvre instantanément, mais il ne semble pas que vous puissiez l'éditer
balupton

17

vous ne les trouverez pas. Si vous souhaitez remplacer certaines lignes de ce fichier, vous pouvez consulter avec lessou grep et utiliser sedpour rechercher et remplacer certaines lignes.

comme ça:

sed -e 's/oldstuff/newstuff/g' inputFileName > outputFileName

sur Wikipedia quelques exemples utiles: http://en.wikipedia.org/wiki/Sed


3
Ou surtout avec le -idrapeau (in-situ), il se comporte donc essentiellement comme un éditeur de texte qui remplacera le contenu du fichier d'origine.
OU Mapper

Ne pas utiliser sed -i; c'est pour ça ed.
fkraiem

14

Essayez-le, si vous voulez, mais ces gros fichiers deviennent impraticables si vous voulez effectuer un montage "normal"; par exemple, vous ne voulez pas sauvegarder vos modifications trop souvent; ça va prendre trop longtemps :)

S'il s'agit d'un jeu unique splitet joinqu'il fonctionne assez bien, et qu'il est assez simple de le diviser en morceaux gérables, puis de rejoindre les morceaux ... Notez que de nombreux rédacteurs ajouteront un caractère de nouvelle ligne à la fin de votre texte modifié. déposer et le faire sans vous en informer! Pour plus d'informations, voir Comment arrêter Gedit, Gvim, Vim, Nano d'ajouter le caractère de fin de ligne de fin de fichier?

Essayez Gvim si vous voulez vraiment éditer un si gros fichier ... Je viens de charger un fichier de 3,9 Go, et tout semble être normal ...

Voici un lien intéressant sur le sujet, à stackoverflow


ne fonctionne pas avec gvim ....
cupakob

1
@upakob: Il vient de charger avec succès un fichier de 4,5 Go sur mon système, en utilisant Gvim ... Le chargement a pris 6 minutes. Avez-vous attendu assez longtemps? (C’est ce que je veux dire par la sauvegarde du fichier. Cela prendra du temps) ... Essayez iotopde regarder ses statistiques d’entrée / sortie pendant le chargement de celui-ci ... System Monitor indique que j’ai 3,2 Go de RAM (quels casse-tête moi, comme j'ai 4 Go) ...
Peter.O

1
@upakob: J'ai essayé 8 Go cette fois-ci, et Gvim l'a chargé avec succès ... Donc, Gvim peut "techniquement" gérer de gros fichiers, Bigger et peut-être même les "PLUS GRANDS" fichiers, mais malgré tout, il est quelque peu "impraticable" (à moins que vous ne soyez comme moi prêt à attendre 41 minutes pour charger 8 Go .. :) ... ... mais je ne pense pas que je vais me donner la peine de le faire à nouveau .....
Peter.O

Vous semblez avoir lié la mauvaise question.
psusi

Vous semblez avoir changé le premier lien pour qu'il soit identique au deuxième, plutôt que "comment arrêter gedit, etc. d'ajouter la fin du fichier newline".
psusi

11

Utilisez glogg - l'explorateur de journaux rapide et intelligent: http://glogg.bonnefon.org/


4
Bienvenue sur Askubuntu.com! Bien que le paquet proposé puisse résoudre le problème, notez que glogg a pour but de rechercher des fichiers volumineux et non de les éditer.
Jos

essayé, ça gonfle toujours.
Kais

11

Il existe un autre moyen très simple et rapide de remplacer le contenu dans des fichiers très volumineux (qui fonctionne au lieu de modifier de grandes vidages mysql)

Tout d’abord, vous devriez installer Midnight Comander - excellent gestionnaire de fichiers pour les systèmes Linux

sudo apt-get install mc

Après cela, vous pouvez ouvrir n’importe quel fichier de n’importe quelle taille en "mode visualisation" (avec le raccourci F3), basculer en vue HEX (raccourci F4) et activer le mode édition (raccourci F2).

Par exemple, j'avais 3 Go de vidage mysql, où je veux supprimer une ligne SQL. J'ouvre le mode d'affichage, trouve la chaîne, ouvre le mode hexadécimal et remplace le contenu avant la ligne requise par le commentaire MYSQL (chaîne "-", codes hexadécimaux 2D 2D 20).

Exemple: mc hex vue


2
Mon 5 cents - MC n'a pas réussi à modifier le fichier de 110 Go, mais ouvert en mode d'affichage.
Andron

@Andron, vous pouvez toujours remplacer le contenu en mode d'affichage
user10635

intéressant. Pouvez-vous décrire comment?
Andron

1
@Andron eh bien, je l'ai déjà décrit dans ma réponse. :) Ouvrez le mode d'affichage, appuyez sur F4 pour obtenir l'hex et remplacez le contenu de n'importe quel fichier, quelle que soit sa taille.
user10635

oh tu as raison Juste une note que dans mon cas, je dois remplacer une longue chaîne (s) et c'est pourquoi cela ne me convient pas. Mais oui, en général, c'est possible.
Andron



4

L' neditéditeur de texte existe depuis longtemps et est tout à fait capable. Il peut ouvrir un fichier texte de 1,9 Go en environ 20 secondes. Il s’agit d’une interface graphique semblable à celle de Windows qui offre toutes les fonctionnalités d’édition de texte standard, telles que la coloration syntaxique, l’indentation, la numérotation des lignes, etc.

Si vous souhaitez redimensionner la fenêtre, faites-le avant d'ouvrir le fichier volumineux. Le Motif X11 est un peu lent sur le redimensionnement, mais c'est aussi une demande difficile.

Il est dans tous les référentiels standard, donc installez-le avec:

sudo apt-get install nedit

C'est open source GPLv2.

https://sourceforge.net/projects/nedit/

Je patauge dans des fichiers texte de 30 à 40 Mo et je les neditgère facilement.


3

Vous pouvez ouvrir le fichier avec hexedit. Cependant, vous ne pourrez que modifier du texte, pas l'ajouter ou le supprimer.


2

Selon cet article de Wikipedia Comparaison des éditeurs de texte VIM entre autres. J'allais suggérer Geany mais il y a un? dans le domaine du support de fichiers volumineux ...

EDIT: J’ai essayé avec geany et j’ai abandonné après 10 minutes d’attente avec 3 noyaux et quasiment toute ma mémoire (virtuelle et physique) utilisée tout le temps ... J'aurais été plus patient. J'ai cherché et n'ai trouvé aucun paramètre / préférence pour gérer différemment les gros fichiers.

J'aime mieux la réponse de fred.bear.



1

Nous nous retrouvons dans une situation où le fichier journal s’accumule à 6 Go et doit effectuer une recherche par date ou par chaîne. Peu d'éditeurs de texte connus pourraient prendre en charge un aussi gros fichier.

Trouvé l'éditeur JOE qui est capable de charger mon fichier de 6 Go en 2 minutes et activé pour explorer le fichier.

Version Windows (sourceforge.net)

Ubuntu (sourceforge.net)


0

Je travaille avec NetBeans : c'est mieux qu'Eclipse dans ce contexte.

Je sais que c'est pour les développeurs, mais vous pouvez ouvrir n'importe quel fichier texte avec.


0

Emacs fera le travail (j’ai déjà édité plus de 10 fichiers GiB), mais il est à peu près aussi désagréable pour le nouvel utilisateur que vim, il est donc possible que vos besoins ne soient pas satisfaits. La courbe d'apprentissage est assez raide.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.