Skip to main content

A CLI tool for tabular data

Reason this release was yanked:

bug

Project description

tab

pypi

A CLI tool for viewing, querying, and converting tabular data files. Reads CSV, TSV, JSON Lines, Parquet, Avro, SQLite tables, and DuckDB tables -- locally or from S3, GCS, and Azure Blob Storage.

pip install tab-cli

Documentation: tongfei.me/tab


Quick look

View any tabular file

tab view data.csv

tab view

Can be remote, with many partitions that is globbed together:

tab view 's3://aws-public-blockchain/v1.0/btc/blocks/date=2026-01-*/*'

Query with SQL

The table is always available as t:

tab view --sql 'SELECT * FROM t WHERE Metric_A_Value > 80' data.csv

tab view --sql

Reshape rows with JMESPath

tab view --jp '{id: participant.id, city: profile.address.city}' data.parquet 

Convert between formats

tab convert data.csv data.parquet
tab convert data.parquet data.jsonl -o jsonl
tab convert data.csv output_dir/ -o parquet -n 4   # partitioned

Concatenate files

tab cat part1.csv part2.csv part3.csv -o jsonl > combined.jsonl

Inspect schema and summary

tab schema data.parquet
tab summary data.parquet

Read from stdin

curl -s https://example.com/data.csv | tab view -i csv -

Read from cloud storage

tab view s3://bucket/path/data.parquet
tab view gs://bucket/path/data.csv
tab view az://container/path/data.jsonl

Globbing is supported for local and cloud paths:

tab view 'data/date=*/*.parquet'
tab view 's3://bucket/path/date=2026-01-*/*'

Read a SQLite table

Use {url}#{table_name} for SQLite inputs:

tab view data.db#users
tab view s3://bucket/path/data.db#users

Read a DuckDB table

Use {url}#{table_name} for DuckDB inputs:

tab view data.duckdb#users
tab view s3://bucket/path/data.duckdb#users

Install cloud extras as needed:

pip install 'tab-cli[s3]'    # AWS S3
pip install 'tab-cli[gs]'    # Google Cloud Storage
pip install 'tab-cli[az]'    # Azure Blob Storage
pip install 'tab-cli[duckdb]'  # DuckDB input support
pip install 'tab-cli[sqlite]'  # SQLite via Polars ADBC
pip install 'tab-cli[all]'   # Install all optional integrations

Supported formats

  • csv
  • tsv
  • jsonl
  • parquet
  • avro
  • duckdb (input only; use {url}#{table_name})
  • sqlite (input only; use {url}#{table_name})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tab_cli-0.2.0.tar.gz (219.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tab_cli-0.2.0-py3-none-any.whl (36.3 kB view details)

Uploaded Python 3

File details

Details for the file tab_cli-0.2.0.tar.gz.

File metadata

  • Download URL: tab_cli-0.2.0.tar.gz
  • Upload date:
  • Size: 219.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.4

File hashes

Hashes for tab_cli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 65878f00f25424a7566aacc43b2820781aa006b7f82728902b5221d71a5c2f67
MD5 fa3d2c7706d7d36d3d3e8c12acf11d2c
BLAKE2b-256 33b9405449c394f2c17382466f40a7d30a0c0db4d1d3e4140ce4751f930e5c05

See more details on using hashes here.

File details

Details for the file tab_cli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: tab_cli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 36.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.4

File hashes

Hashes for tab_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f07cb5304c48fe9360541d19c5e7e9c6400d9b45c5015c40b186f15d891c82cc
MD5 f7fc17dd351d36792af3d9fdb670d16c
BLAKE2b-256 94d174fd95f6c66c7387ecf7bca71dd6b6f3b74e8cde3ff54ab549a474b11d44

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page