Skip to main content

Cat structured data , in style

Project description

dotcat: Cat Structured Data, in Style

Dealing with structured data in shell scripts is all but impossible. dotcat gives you the ability to fetch structured data as easily as using cat it.

# Access data by attribute path
dotcat data.json person.name.first
# John
dotcat data.json person.name.last
# Doe

# Controle your output format
dotcat data.json person.name --output=yaml
# name:
#   first: John
#   last: Doe
dotcat data.json person.name --output=json
# {"first": "John", "last": "Doe"}

# List access
dotcat data.json person.friends@0
# {"name":{"first": "Alice", "last": "Smith"}, "age": 25} -> item access
dotcat data.json person.friends@2:4
# [{"name":{"first": "Alice", "last": "Smith"}, "age": 25}, {"name":{"first": "Bob", "last": "Johnson"}, "age": 30}]  -> slice access
dotcat data.json person.friends@4:-1
# ... from 5th to last item

The good times are here

Easily read values from JSON, YAML, TOML, and INI files without complex scripting or manual parsing.

Access deeply nested values using intuitive dot-separated paths (e.g., person.first.name) while controlling the output format with --output flag.

Dotcat is a good unix citizen with well structured exit codes so it can take part of your command pipeline like cat or grep would.

Installation

If you have a global pip install, this will install dotcat globally:

pip install dotcat

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

dotcat-0.8.22.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

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

dotcat-0.8.22-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file dotcat-0.8.22.tar.gz.

File metadata

  • Download URL: dotcat-0.8.22.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dotcat-0.8.22.tar.gz
Algorithm Hash digest
SHA256 bd07ad2d02b6aa36f300d307953c36a65f625b8a630799e387042162f82e124f
MD5 fb437b1de2e16d575d02acd17f7d3956
BLAKE2b-256 5ec5197b9769c5d00f4ec3e85cefb9a7c1945e7eb61a17b6c76bf632a3c5150d

See more details on using hashes here.

File details

Details for the file dotcat-0.8.22-py3-none-any.whl.

File metadata

  • Download URL: dotcat-0.8.22-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dotcat-0.8.22-py3-none-any.whl
Algorithm Hash digest
SHA256 af3fd82e22b67fa8c07846f47caf9178aa20cbe83a43ee408b2947385711c045
MD5 42d0ac595aa3f1dd93e716b498bf63ea
BLAKE2b-256 2c422e1eeb5bebe6f80bf0a548cdbbc8d1b32907030a633b5386bfd6ab766c9a

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