Czy ktoś wie o przeglądarce wiersza polecenia CSV dla systemu Linux / OS X? Myślę o czymś podobnym, less
ale to rozdziela kolumny w bardziej czytelny sposób. (Byłbym w porządku, otwierając go za pomocą OpenOffice Calc lub Excel, ale to jest zbyt przesadzone, by po prostu patrzeć na dane tak, jak muszę). Posiadanie przewijania w poziomie i pionie byłoby świetne.
linux
macos
command-line
csv
Benjamin Oakes
źródło
źródło
Odpowiedzi:
Możesz także użyć tego:
column
jest standardowym programem uniksowym, który jest bardzo wygodny - znajduje odpowiednią szerokość każdej kolumny i wyświetla tekst jako ładnie sformatowaną tabelę.Uwaga: ilekroć masz puste pola, musisz wstawić w nich jakiś symbol zastępczy, w przeciwnym razie kolumna zostanie scalona z następnymi kolumnami. Poniższy przykład ilustruje sposób
sed
wstawiania symbolu zastępczego:Zauważ, że podstawienie
,,
na, ,
odbywa się dwa razy. Jeśli zrobisz to tylko raz,1,,,4
stanie się,1, ,,4
ponieważ drugi przecinek jest już dopasowany.źródło
column
. Skończyło się na tym, że utworzyłem krótki skrypt powłoki (większość z nich to „jak mam go używać?” I kod sprawdzający błędy). 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.
Możesz zainstalować
csvtool
(na Ubuntu) przeza następnie uruchom:
To sprawi, że będzie ładnie i ładnie wewnątrz instancji vim tylko do odczytu, nawet jeśli masz komórki o bardzo długich wartościach.
źródło
ocaml-csv
pakietubase
dla mnie w Centos7Zobacz csvkit . Zapewnia zestaw narzędzi zgodnych z filozofią UNIX (co oznacza, że są małe, proste, jednofunkcyjne i można je łączyć).
Oto przykład, który wyodrębnia dziesięć najbardziej zaludnionych miast w Niemczech z bezpłatnej bazy danych Maxmind World Cities i wyświetla wynik w formacie czytelnym dla konsoli:
Csvkit jest niezależny od platformy, ponieważ został napisany w języku Python.
źródło
pip install csvkit
. Cieszyć się!Tabview: lekki Python przeklina przeglądarkę plików CSV (a także inne tabelaryczne dane Pythona, takie jak lista list) jest tutaj na Github
Funkcje:
źródło
Jeśli jesteś vimerem, skorzystaj z wtyczki CSV , która jest już piękna .
źródło
Pakiet nodejs tecfu / tty-table można zainstalować globalnie, aby dokładnie to zrobić:
Może także obsługiwać strumienie.
Aby uzyskać więcej informacji, zobacz dokumenty dotyczące korzystania z terminala tutaj .
źródło
xsv to więcej niż przeglądarka. Polecam to do większości zadań CSV w wierszu poleceń, szczególnie w przypadku dużych zestawów danych.
źródło
Mój projekt FOSS CSVfix pozwala wyświetlać pliki CSV w formacie tabeli „ASCII art”.
źródło
Odpowiedź Ofri daje ci wszystko, o co prosiłeś. Ale .. jeśli nie chcesz pamiętać polecenia, możesz dodać to do swojego ~ / .bashrc (lub odpowiednika):
Jest to dokładnie to samo, co odpowiedź Ofri, tyle że owinąłem ją w funkcję powłoki i używam
less -S
opcji zatrzymania zawijania linii (sprawia, żeless
zachowuje się bardziej jak office / oocalc).Otwórz nową powłokę (lub wpisz
source ~/.bashrc
swoją bieżącą powłokę) i uruchom polecenie, używając:csview <filename>
źródło
Długo korzystałem z odpowiedzi pisswillis.
Ale potem połączyłem trochę kodu, który znalazłem na http://chrisjean.com/2011/06/17/view-csv-data-from-the-command-line, który działa lepiej dla mnie:
Powodem dla mnie jest to, że lepiej obsługuje szerokie kolumny.
źródło
tblless
w pakiecie Tabulator zawijacolumn
polecenie unix , a także wyrównuje kolumny numeryczne.źródło
Oto (prawdopodobnie zbyt) prosta opcja:
źródło
Kolejne wielofunkcyjne narzędzie do manipulacji CSV (i nie tylko): Miller . Z własnego opisu jest jak awk, sed, cut, join i sortuj dane indeksowane według nazw, takie jak CSV, TSV i tabelaryczny JSON. (link do repozytorium github: https://github.com/johnkerl/miller )
źródło
Napisałem ten plik csv_view.sh, aby sformatować pliki CSV z wiersza polecenia, to czyta cały plik, aby obliczyć optymalną szerokość każdej kolumny (wymaga perla, zakłada, że nie ma przecinków w polach, używa również mniej):
źródło
Korzystając z TxtSushi możesz:
źródło
Tabview jest naprawdę dobry. Pracował z 200 + MB plikami, które ładnie się wyświetlały, które były błędne z LibreOffice, a także z wtyczką csv w gvim.
Wersja Anaconda jest dostępna tutaj: https://anaconda.org/bioconda/tabview
źródło
Stworzyłem tablign do tych (i innych) celów. Zainstaluj za pomocą
i
Działa również, jeśli dane są oddzielone przez coś innego niż przecinki. Co najważniejsze, zachowuje ograniczniki, dzięki czemu można go również używać do stylizowania tabel ASCII bez poświęcania składni [Markdown, CSV, LaTeX].
źródło
Collecting tablify Could not find a version that satisfies the requirement tablify (from versions: ) No matching distribution found for tablify
tablign
. Naprawiono w opisie.W tym celu napisałem scenariusz, viewtab , w Groovy. Wywołujesz to w następujący sposób:
Jest to w zasadzie superlekki arkusz kalkulacyjny, który można wywoływać z wiersza poleceń, obsługuje pliki CSV i pliki rozdzielone tabulatorami, odczytuje BARDZO duże pliki, którymi dławią się Excel i Numbers, i jest bardzo szybki. To nie jest wiersz poleceń w tym sensie, że jest tylko tekstem, ale jest niezależny od platformy i prawdopodobnie będzie pasował do rachunku dla wielu osób szukających rozwiązania problemu szybkiego sprawdzania wielu lub dużych plików CSV podczas pracy w środowisku wiersza poleceń .
Skrypt i sposób jego instalacji opisano tutaj:
http://bayesianconspiracy.blogspot.com/2012/06/quick-csvtab-file-viewer.html
źródło
W python znajduje się krótki skrypt wiersza poleceń: https://github.com/rgrp/csv2ascii/blob/master/csv2ascii.py
Wystarczy pobrać i umieścić na swojej ścieżce. Użycie jest jak
Konwertuj plik csv at
csv-file-path
na formularz ascii zwracając wynik na standardowe wyjście. Jeślicsv-file-path
= '-', to czytaj ze standardowego wejścia.Opcje:
źródło