
miller
Command-line data processing tool for CSV, TSV, JSON, and JSON Lines with field-based operations
Miller is a command-line data processing tool that operates on structured data formats including CSV, TSV, JSON, JSON Lines, and positionally-indexed data. It functions like traditional Unix tools (awk, sed, cut, join, sort) but works with named fields rather than positional indices, making it suitable for modern data formats where field names matter.
The tool supports field manipulation operations such as adding computed fields, dropping columns, sorting, statistical aggregation, and format conversion. Miller handles heterogeneous records where different rows can have different schemas, which is common in NoSQL and log data. It processes data in a streaming fashion, keeping only one record in memory at a time for most operations, enabling it to work with datasets larger than available RAM.
Miller targets data analysts, DevOps engineers, and system administrators who need to clean, transform, or analyze structured data from the command line. It complements data analysis tools like R and pandas by preprocessing data before loading into memory-intensive frameworks. The tool integrates with Unix pipelines and supports format-aware operations like keeping CSV headers when sorting.
Installation
# via Homebrew
brew install miller
# via APT
apt-get install miller
# via Go
go install github.com/johnkerl/miller/v6/cmd/mlr@latest

Alternatives & related tools
usql
Universal command-line SQL client with PostgreSQL psql-inspired interface for multiple databases
pup
Command line HTML processing tool using CSS selectors to filter and extract data from HTML documents
dasel
Command-line tool for querying, modifying, and transforming structured data files (JSON, YAML, TOML, XML, CSV)
jid
Interactive JSON explorer that takes piped input and lets you drill down with dot-path or JMESPath queries, with tab completion and suggestions.
gron
Transforms JSON into discrete assignments to make it greppable and enable exploration of complex JSON structures
add a badge to your README
Maintain miller? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/tools/miller?utm_source=badge)<a href="https://www.trmn.sh/tools/miller?utm_source=badge"><img src="https://www.trmn.sh/badge/miller.svg" alt="Featured on trmn" height="20"></a>