Skip to main content

Cat structured data , in style

Project description

dotcat: Catting 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.14.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.14-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dotcat-0.8.14.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.14.tar.gz
Algorithm Hash digest
SHA256 1dff8cbba12da30ca64e5c88a8fef264dc8f54001f8b08ee21ec7780a2bda4ef
MD5 4a4f31f8c613109f0221e34b0d87fab3
BLAKE2b-256 f4328f863110f72053e44556b2fc544bde71c9b2a6f56ee6d52f5ed32c7c9d70

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dotcat-0.8.14-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.14-py3-none-any.whl
Algorithm Hash digest
SHA256 df2273a606ccf5e08c7f110b0f9ebb5cda4efaca0182602ce217ef79f8af9836
MD5 9e5a1b8ff9f9ba9073d054746c5e3b58
BLAKE2b-256 6ec0a10e1ca2ceaed15d552e0d6c469bc3f4da8ff178b01b47bbb454c90e31aa

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