2013-11-02 13 views
6

Angenommen, ich bin in einem Ordner, in dem lsTest.csv zurückgibt. Welchen Befehl gebe ich ein, um die Anzahl der Zeilen und Spalten von Test.csv (eine durch Komma getrennte Standarddatei) zu erhalten?So erhalten Sie CSV-Dimensionen von Terminal

+0

Es gibt nicht so „Befehl sein würde, ist ", die Aufgabe ist nicht trivial. Sie müssen dafür ein Skript implementieren. – arkascha

Antwort

18

Versuchen Sie mit awk. Es ist am besten geeignet für gut formatiertcsv Dateimanipulationen.

awk -F, 'END {printf "Number of Rows : %s\nNumber of Columns = %s\n", NR, NF}' Test.csv 

-F, spezifiziert , als Feldtrenn in CSV-Datei.

Am Ende der Datei Traversal, NR und NF Werte von Anzahl der Zeilen und Spalten jeweils


Ein weiterer quick and dirty Ansatz

# Number of Rows 
cat Test.csv | wc -l 

# Number of Columns 
head -1 Test.csv | sed 's/,/\t/g' | wc -w