Parsing CSV at the command line with `csvcut`
Parsing csv at the command line is easy with the csvcut tool from csvkit.
csvkit
is installable with pip
> pip install csvcut
You can print only the columns you are interested in.
> echo "a,b,c,d" | csvcut -c 1,4
a,d
> echo "a,b,c,d" | csvcut -c 1,5
Column 5 is invalid. The last column is 'd' at index 4.
It also handles quoted csv columns:
echo 'a,"1,2,3,4",c,d' | csvcut -c 2,3
It handles new lines:
> echo 'a,b\nc,d' | csvcut -c 2
b
d
There are a virtual plethora of options check out csvcut --help
.
csvkit
has a number of csv processing tools, check them out here.