Data Processing Command-Line Tools
33 tools in the Data category: data processing and transformation tools. Sorted by GitHub stars; the most starred are pandoc, jq and fx.
Tools
pandoc
Haskell library and command-line tool that converts documents between dozens of markup formats, including Markdown, LaTeX, HTML, docx, EPUB and PDF.
jq
Command-line JSON processor for slicing, filtering, mapping and transforming structured data
fx
Terminal-based JSON processor and viewer for querying, filtering, and manipulating JSON data interactively.
yq
Command-line YAML, JSON, XML, and CSV processor with jq-like syntax for querying and transforming structured data
gron
Transforms JSON into discrete assignments to make it greppable and enable exploration of complex JSON structures
pgcli
Interactive PostgreSQL client with auto-completion, syntax highlighting, and smart context-sensitive suggestions.
mycli
MySQL command line client with auto-completion, syntax highlighting, and smart context-aware SQL suggestions
xsv
Command line CSV data manipulation tool for indexing, slicing, analyzing, splitting and joining CSV files
fq
Binary data analysis tool with jq-like query language for formats like MP4, PCAP, ELF, and packet captures
usql
Universal command-line SQL client with PostgreSQL psql-inspired interface for multiple databases
miller
Command-line data processing tool for CSV, TSV, JSON, and JSON Lines with field-based operations
visidata
Terminal interface for exploring and arranging tabular data with support for CSV, JSON, SQLite, Excel, and many other formats.
jc
Converts output of CLI tools, file types, and strings to JSON or Python dictionaries so it can be piped to jq and used in scripts.
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)
htmlq
HTML parser that uses CSS selectors to extract content from HTML files, similar to jq for JSON
jid
Interactive JSON explorer that takes piped input and lets you drill down with dot-path or JMESPath queries, with tab completion and suggestions.
jnv
Interactive terminal JSON viewer and jq filter editor with auto-completion, using the built-in jaq engine; reads files or stdin.
jless
Command-line JSON viewer with syntax highlighting, collapsible sections, and vim-inspired navigation commands
youplot
Command-line tool that generates Unicode plots from CSV/TSV data directly in the terminal
jo
Command-line utility to create JSON objects and arrays from shell arguments and piped input
lazysql
Cross-platform TUI database management tool for MySQL, PostgreSQL, SQLite, and MSSQL with SQL editor and table operations.
csvlens
Terminal CSV file viewer with spreadsheet-like navigation and filtering capabilities
qsv
Rust CLI toolkit of composable commands for querying, transforming, validating, joining, and describing CSV, Excel, and other tabular data.
gojq
Pure Go implementation of jq command-line JSON processor with arbitrary-precision arithmetic and YAML support
angle-grinder
Command-line log analysis tool that parses, filters, and aggregates log data with a pipeline query language and a live-updating terminal UI.
litecli
Command-line client for SQLite databases with auto-completion and syntax highlighting.
dblab
Interactive terminal-based database client for PostgreSQL, MySQL, SQLite3, Oracle, and SQL Server
jqp
A terminal UI for running jq queries interactively against JSON or NDJSON input, using the gojq implementation, with themes and query history.
dolphie
Real-time terminal interface for monitoring MySQL/MariaDB and ProxySQL database performance and analytics
daff
Library for comparing tables and producing diffs, with CLI for CSV/TSV/SQLite and git integration
qo
TUI for querying JSON and CSV files with SQL syntax, reads from stdin and outputs to stdout
alphai-tui
Terminal stock dashboard with watchlists, candlestick charts, portfolio tracking, news, and company filings.
Guides
- Best JSON CLI ToolsCompare jq, yq, gojq, fx, dasel, gron and qo for querying, filtering and transforming JSON (and YAML) from the command line.
- Best CSV Tools for the Command LineCompare Miller, VisiData, xsv, qo and csvlens for querying, transforming and browsing CSV files from the terminal.
- Best Database CLI ClientsCompare usql, pgcli, mycli, harlequin and lazysql for querying Postgres, MySQL and SQLite from the terminal, with notes on dblab.
- Benchmark shell commands with hyperfineTime shell commands with hyperfine: warmup runs, cache-clearing with --prepare, side-by-side comparisons, parameter scans and Markdown or JSON export.
- Change YAML configuration with yqRead and update a nested YAML value with mikefarah/yq, preview the result, then write it to a disposable file.
- Filter JSON logs and count errors with jqUse jq to select errors from JSON Lines logs, keep useful fields, and count failures by service.