361 votes

Visionneuse de ligne de commande CSV ?

Quelqu'un connais un visualiseur CSV de ligne de commande pour Linux/OS X ? Je pense à quelque chose comme `` , mais que les espaces sur les colonnes d’une manière plus lisible. (Je serais bien avec ouvrant avec OpenOffice Calc ou Excel, mais qui est beaucoup trop maîtrisé pour juste regarder les données comme je dois). Avoir le défilement horizontal et vertical serait formidable.

503voto

user437522 Points 1106

Vous pouvez également utiliser ce:

column -s, -t < somefile.csv | less -#2 -N -S

column est une norme unix programme qui est très pratique-il trouve la largeur de chaque colonne, et affiche le texte comme un bien mis en forme de la table.

Remarque: chaque fois que vous avez des champs vides, vous avez besoin de mettre une sorte d'espace réservé, sinon la colonne est fusionné avec les colonnes suivantes. L'exemple suivant montre comment utiliser sed pour insérer un espace réservé:

$ cat data.csv
1,2,3,4,5
1,,,,5
$ sed 's/,,/, ,/g;s/,,/, ,/g' data.csv | column -s, -t
1  2  3  4  5
1           5
$ cat data.csv
1,2,3,4,5
1,,,,5
$ column -s, -t < data.csv
1  2  3  4  5
1  5
$ sed 's/,,/, ,/g;s/,,/, ,/g' data.csv | column -s, -t
1  2  3  4  5
1           5

Notez que la substitution d' ,, pour , , est effectué deux fois. Si vous n'avez qu'une seule fois, 1,,,4 deviendra 1, ,,4 depuis le deuxième virgule est déjà appariés.

124voto

d_chall Points 191

Vous pouvez installer csvtool (sur Ubuntu) via

``

puis exécutez ;

``

Cela rendra agréable et joli à l’intérieur d’une instance de vim lecture seule, même si vous avez quelques cellules avec des valeurs très longues.

84voto

Kai Sternad Points 7676

Jetez un oeil à csvkit. Il fournit un ensemble d'outils qui adhèrent à la philosophie d'UNIX (ce qui signifie qu'ils sont de petite taille, simple, unique dessein et peuvent être combinés).

Voici un exemple qui extrait les dix villes les plus peuplées en Allemagne à partir de la libre Maxmind grandes Villes du Monde, de la base de données et affiche le résultat dans une console-format lisible:

$ csvgrep -e iso-8859-1 -c 1 -m "de" worldcitiespop | csvgrep -c 5 -r "\d+" 
  | csvsort -r -c 5 -l | csvcut -c 1,2,4,6 | head -n 11 | csvlook
-----------------------------------------------------
|  line_number | Country | AccentCity | Population  |
-----------------------------------------------------
|  1           | de      | Berlin     | 3398362     |
|  2           | de      | Hamburg    | 1733846     |
|  3           | de      | Munich     | 1246133     |
|  4           | de      | Cologne    | 968823      |
|  5           | de      | Frankfurt  | 648034      |
|  6           | de      | Dortmund   | 594255      |
|  7           | de      | Stuttgart  | 591688      |
|  8           | de      | Düsseldorf | 577139      |
|  9           | de      | Essen      | 576914      |
|  10          | de      | Bremen     | 546429      |
-----------------------------------------------------

Csvkit est indépendant de la plateforme, car il est écrit en Python.

52voto

Scott Hansen Points 31

Tabview: léger python malédictions de la ligne de commande fichier CSV spectateur (et aussi d'autres tableaux Python de données, comme une liste de listes) est sur Github

Caractéristiques:

  • Python 3.x
  • Feuille de calcul de vue pour faciliter la visualisation de données tabulaires
  • Vim-comme la navigation (h,j,k,l, g(en haut), G(bas), 12G aller à la ligne 12, m - marque, '- goto marque, etc.)
  • Bascule persistante de la ligne d'en-tête
  • Trier par ordre croissant ou décroissant par n'importe quelle colonne
  • La recherche de texte intégral, n et p pour le cycle entre les résultats de la recherche
  • "Enter" pour afficher l'intégralité du contenu de la cellule
  • F1 ou ? pour les raccourcis clavier
  • Pouvez également utiliser du python en ligne de commande pour la visualisation de données tabulaires (par ex. liste de listes)

32voto

P. Myer Nore Points 1531

Si vous êtes un vimmer, utiliser le plugin CSV, qui est juuust belle.

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