Quelqu'un connaît-il une visionneuse CSV en ligne de commande pour Linux / OS X? Je pense à quelque chose comme less
mais qui espace les colonnes de manière plus lisible. (Je serais d'accord pour l'ouvrir avec OpenOffice Calc ou Excel, mais c'est beaucoup trop maîtrisé pour simplement regarder les données comme je le dois.) Avoir un défilement horizontal et vertical serait formidable.
linux
macos
command-line
csv
Benjamin Oakes
la source
la source
Réponses:
Vous pouvez également utiliser ceci:
column
est un programme Unix standard qui est très pratique - il trouve la largeur appropriée de chaque colonne et affiche le texte sous forme de tableau bien formaté.Remarque: chaque fois que vous avez des champs vides, vous devez y placer une sorte d'espace réservé, sinon la colonne est fusionnée avec les colonnes suivantes. L'exemple suivant montre comment utiliser
sed
pour insérer un espace réservé:Notez que la substitution de
,,
pour, ,
est effectué deux fois. Si vous ne le faites qu'une seule fois,1,,,4
deviendra1, ,,4
puisque la deuxième virgule est déjà associée.la source
column
. J'ai fini par en faire un script shell court (la plupart est du passe-partout "comment l'utiliser?" Et du code de vérification d'erreur). github.com/benjaminoakes/utilities/blob/master/view-csvman column
:-n By default, the column command will merge multiple adjacent delimiters into a single delimiter when using the -t option; this option disables that behavior. This option is a Debian GNU/Linux extension.
Vous pouvez installer
csvtool
(sur Ubuntu) viapuis exécutez:
Cela le rendra joli et joli à l'intérieur d'une instance de vim en lecture seule, même si vous avez des cellules avec des valeurs très longues.
la source
ocaml-csv
package dubase
pour moi dans Centos7Jetez un œil à csvkit . Il fournit un ensemble d'outils qui adhèrent à la philosophie UNIX (ce qui signifie qu'ils sont petits, simples, à usage unique et peuvent être combinés).
Voici un exemple qui extrait les dix villes les plus peuplées d'Allemagne de la base de données gratuite Maxmind World Cities et affiche le résultat dans un format lisible par console:
Csvkit est indépendant de la plateforme car il est écrit en Python.
la source
pip install csvkit
. Prendre plaisir!Tabview: le visualiseur de fichiers CSV en ligne de commande curses python léger (et aussi d'autres données tabulaires Python, comme une liste de listes) est ici sur Github
Fonctionnalités:
la source
Si vous êtes un vimmer, utilisez le plugin CSV , qui est joliment beau .
la source
Le package nodejs tecfu / tty-table peut être globalement installé pour faire précisément ceci:
Il peut également gérer des flux.
Pour plus d'informations, consultez les documents d'utilisation du terminal ici .
la source
xsv est plus qu'une visionneuse. Je le recommande pour la plupart des tâches CSV sur la ligne de commande, en particulier lorsqu'il s'agit de grands ensembles de données.
la source
Mon projet FOSS CSVfix vous permet d'afficher des fichiers CSV au format tableau "ASCII art".
la source
La réponse d'Ofri vous donne tout ce que vous avez demandé. Mais .. si vous ne voulez pas vous souvenir de la commande, vous pouvez l'ajouter à votre ~ / .bashrc (ou équivalent):
C'est exactement la même chose que la réponse d'Ofri, sauf que je l'ai enveloppé dans une fonction shell et j'utilise l'
less -S
option pour arrêter le wrapping des lignes (faitless
se comporter plus comme un bureau / oocalc).Ouvrez un nouveau shell (ou tapez
source ~/.bashrc
votre shell actuel) et exécutez la commande en utilisant:csview <filename>
la source
J'ai utilisé la réponse de pisswillis pendant longtemps.
Mais j'ai ensuite combiné du code que j'ai trouvé sur http://chrisjean.com/2011/06/17/view-csv-data-from-the-command-line qui fonctionne mieux pour moi:
La raison pour laquelle cela fonctionne mieux pour moi est qu'il gère mieux les colonnes larges.
la source
tblless
dans le package Tabulator encapsule lacolumn
commande unix et aligne également les colonnes numériques.la source
Voici une option (probablement trop) simple:
la source
Encore un autre outil de manipulation CSV multifonctionnel (et pas seulement): Miller . D'après sa propre description, c'est comme awk, sed, cut, join et tri pour les données indexées comme CSV, TSV et JSON tabulaire. (lien vers le référentiel github: https://github.com/johnkerl/miller )
la source
J'ai écrit ce csv_view.sh pour formater les CSV à partir de la ligne de commande, cela lit le fichier entier pour déterminer la largeur optimale de chaque colonne (nécessite perl, suppose qu'il n'y a pas de virgule dans les champs, utilise également moins):
la source
En utilisant TxtSushi, vous pouvez faire:
la source
Tabview est vraiment bon. Travaillé avec 200 + fichiers MB qui s'affichaient bien qui étaient bogués avec LibreOffice ainsi que le plugin csv dans gvim.
La version Anaconda est disponible ici: https://anaconda.org/bioconda/tabview
la source
J'ai créé un tableau à ces fins (et à d'autres). Installer avec
et
Fonctionne également si les données sont séparées par autre chose que des virgules. Plus important encore, il conserve les délimiteurs afin que vous puissiez également l'utiliser pour styliser vos tables ASCII sans sacrifier votre syntaxe [Markdown, CSV, LaTeX].
la source
Collecting tablify Could not find a version that satisfies the requirement tablify (from versions: ) No matching distribution found for tablify
tablign
. Corrigé dans la description.J'ai écrit un script, viewtab , dans Groovy dans ce but. Vous l'invoquez comme:
Il s'agit essentiellement d'une feuille de calcul ultra-légère qui peut être invoquée à partir de la ligne de commande, gère les fichiers CSV et séparés par des tabulations, peut lire de très gros fichiers sur lesquels Excel et Numbers s'étouffent et est très rapide. Ce n'est pas une ligne de commande dans le sens d'être uniquement textuel, mais il est indépendant de la plate-forme et conviendra probablement à la plupart des personnes à la recherche d'une solution au problème de l'inspection rapide de nombreux ou de gros fichiers CSV tout en travaillant dans un environnement de ligne de commande .
Le script et comment l'installer sont décrits ici:
http://bayesianconspiracy.blogspot.com/2012/06/quick-csvtab-file-viewer.html
la source
Il y a ce court script de ligne de commande en python: https://github.com/rgrp/csv2ascii/blob/master/csv2ascii.py
Il suffit de télécharger et de placer sur votre chemin. L'utilisation est comme
Convertissez le fichier csv à
csv-file-path
en forme ascii en retournant le résultat sur stdout. Sicsv-file-path
= '-' alors lisez depuis stdin.Options:
la source