gron
dasel
Our great sponsors
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
gron
-
Frawk: An efficient Awk-like programming language. (2021)
gron (https://github.com/tomnomnom/gron) to transform it and query and then invert the transformation?
- Show HN: Flatito, grep for YAML and JSON files
- Gron: Make JSON greppable
-
Make JSON Greppable
It buffers all of its output statements in memory before writing to stdout:
https://github.com/tomnomnom/gron/blob/master/main.go#L204
- Ask HN: What are some unpopular technologies you wish people knew more about?
-
Jaq – A jq clone focused on correctness, speed, and simplicity
Have you tried `gron`?
It converts your nested json into a line by line format which plays better with tools like `grep`
From the project's README:
▶ gron "https://api.github.com/repos/tomnomnom/gron/commits?per_page..." | fgrep "commit.author"
json[0].commit.author = {};
json[0].commit.author.date = "2016-07-02T10:51:21Z";
json[0].commit.author.email = "[email protected]";
json[0].commit.author.name = "Tom Hudson";
https://github.com/tomnomnom/gron
It was suggested to me in HN comments on an article I wrote about `jq`, and I have found myself using it a lot in my day to day workflow
-
Interactive Examples for Learning Jq
> So all I want is a tool to go from json => line oriented and I will do the rest with the vast library of experience I already have at transformations on the command line.*
The tool for that is likely https://github.com/tomnomnom/gron
-
Modern Linux Tools vs. Unix Classics: Which Would I Choose?
If JQ is too much, see GRON &| Miller
gron transforms JSON into discrete assignments to make it easier to grep for what you want https://github.com/tomnomnom/gron
Miller is like awk, sed, cut, join, and sort for data formats such as CSV, TSV, JSON, JSON https://github.com/johnkerl/miller
- XML is better than YAML
-
jq 1.7 Released
And jless [1] and gron [2].
This is the first I'm hearing of gron, but adding here for completeness sake. Meanwhile, JSON seems to be becoming a standard for CLI tools. Ideal scenario would be if every CLI tool has a --json flag or something similar, so that jc is not needed anymore.
[1] https://jless.io/
[2] https://github.com/tomnomnom/gron
dasel
- jq 1.7 Released
-
Dasel - jq for yaml json and toml
wget https://github.com/TomWright/dasel/releases/download/v2.1.2/dasel_linux_amd64 install -o root -g root -m 0755 dasel_linux_amd64 /usr/bin/dasel
-
Why a world needs an UNIX-style image collection manager?
https://github.com/TomWright/dasel handles JSON, TOML, YAML, XML and CSV
-
Tool to interact with CSV
dasel - Comparable to jq / yq, but supports JSON, YAML, TOML, XML and CSV with zero runtime dependencies.
-
Yq is a portable yq: command-line YAML, JSON, XML, CSV and properties processor
Another tool in this space is Dasel[1], which can handle querying/modifying JSON, YAML, TOML, XML and CSV files.
[1] https://github.com/TomWright/dasel
- Jc – JSONifies the output of many CLI tools
-
What are your coolest tools for one-liners ?
There also is dasel which combine jq, yq as well handling TOML, XML and CSV
- Run SQL on CSV, Parquet, JSON, Arrow, Unix Pipes and Google Sheet
-
What is the coolest Go open source projects you have seen?
dasel # most common human readable configs(json, yaml, xml...)
-
How to grep a specific field from curl output
I have recently switched to Dasel (https://github.com/TomWright/dasel ) due to its ability to work not only with JSON but also with other formats.
What are some alternatives?
jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]
jfq - JSONata on the command line
yq - Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents
xidel - Command line tool to download and extract data from HTML/XML pages or JSON-APIs, using CSS, XPath 3.0, XQuery 3.0, JSONiq or pattern matching. It can also create new or transformed XML/HTML/JSON documents.
miller - Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
pup - Parsing HTML at the command line
kubectl-jq - Kubectl plugin that works like "kubectl get" but runs everything through a JQ program you provide
JsonPath - Java JsonPath implementation
Go Metrics - Go port of Coda Hale's Metrics library
fx - Terminal JSON viewer & processor
Moby - The Moby Project - a collaborative project for the container ecosystem to assemble container-based systems