mlr
Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON. tldr-pages
On several platforms
Several platforms
Pretty-print a CSV file in a tabular format
mlr --icsv --opprint cat example.csvIdentifyReceive JSON data and pretty print the output
echo '{"key":"value"}' | mlr --ijson --opprint catIdentifySort alphabetically on a field
mlr --icsv --opprint sort -f field example.csvIdentifySort in descending numerical order on a field
mlr --icsv --opprint sort -nr field example.csvIdentifyConvert CSV to JSON, performing calculations, and display those calculations
mlr --icsv --ojson put '$new_field1 = $old_field_a/$old_field_b' example.csvIdentifyReceive JSON and format the output as vertical JSON
echo '{"key1":"value1", "key2":"value2"}' | mlr --ijson --ojson --jvstack catIdentifyFilter lines of a compressed CSV file treating numbers as Strings
mlr --prepipe 'gunzip' --csv filter --infer-none '$field_name =~ "regex"' example.csv.gzIdentify