Extend jq
for any data format.
Currently supports JSON, TOML, and YAML.
Pre-built binaries for 64-bit Linux, macOS, and Windows are provided. The
following script can be used to automatically detect your host system, download
the required artifact, and extract the aq
binary to the given directory.
curl --proto '=https' -fLsS https://rossmacarthur.github.io/install/crate.sh \
| bash -s -- --repo rossmacarthur/aq --to /usr/local/bin
Alternatively, you can download an artifact directly from the the releases page.
aq
can be installed from Crates.io
using Cargo, the Rust package manager.
cargo install aq-cli
By default aq
behaves just like jq
and operates on JSON.
$ echo '{"foo":{"bar": 1337}}' | aq .foo
{
"bar": 1337
}
But it also accepts options to specify the input and output format. For example with a TOML input and a JSON output:
$ echo '[foo]\nbar = 1337' | aq -i toml -o json .foo
{
"bar": 1337
}
If not provided, the output format defaults to the input format. Additionally,
you can use j
for JSON, t
for TOML, and y
for YAML for maximum brevity.
$ echo '[foo]\nbar = 1337' | aq -it .foo
bar = 1337
This project is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.