1 votes

Comment visualiser le contenu d'un très gros fichier en position sous Linux ?

J'ai un fichier contenant des données JSON d'une taille d'environ 90 Mo et comportant une seule ligne. J'ai besoin d'aller à la position 99376229. Malheureusement, vim et less se plantent tous deux lorsque j'essaie de me déplacer vers cette colonne.

Comment puis-je regarder le contenu à cette position ou plutôt les données qui l'entourent ? Je cherche une erreur de syntaxe dans les données qui entraîne la rupture de mon analyseur JSON.

Je suis prêt à accepter n'importe quel type de solution, y compris les solutions programmatiques.

2voto

James Mertz Points 390

Python :

$ python
>>> f = open("file.json", "r")
>>> f.seek(99376229)
>>> f.read(1024)

Shell :

$ tail -c +99376229 file.json | head -c 1K

Essayez aussi de faire passer le fichier par jshon , json_pp ou json_reformat ; ils donneront probablement de meilleurs messages d'erreur.

0voto

chris Points 111

Essayez d'utiliser la commande cut de GNU coreutils. Elle peut traiter les positions de caractères ainsi que les champs... Voir
$ man 1 cut
pour plus de détails.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X