diff --git a/pages/common/mlr.md b/pages/common/mlr.md new file mode 100644 index 000000000..7d73bb953 --- /dev/null +++ b/pages/common/mlr.md @@ -0,0 +1,27 @@ +# mlr + +> Miller is like `awk`, `sed`, `cut`, `join`, and `sort` for name-indexed data such as CSV, TSV, and tabular JSON. + +- Pretty-print a CSV file in a tabular format: + +`mlr --icsv --opprint cat {{example.csv}}` + +- Receive JSON data and pretty print the output: + +`echo '{"hello":"world"}' | mlr --ijson --opprint cat` + +- Sort alphabetically on a field: + +`mlr --icsv --opprint sort -f {{field}} {{example.csv}}` + +- Sort in descending numerical order on a field: + +`mlr --icsv --opprint sort -nr {{field}} {{example.csv}}` + +- Convert CSV to JSON, performing calculations and display those calculations: + +`mlr --icsv --ojson put '${{newField1}} = ${{oldFieldA}}/${{oldFieldB}}' {{example.csv}}` + +- Receive JSON and format the output as vertical JSON: + +`echo '{"hello":"world", "foo":"bar"}' | mlr --ijson --ojson --jvstack cat`