Skip to content

Extend jq for any data format

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

rossmacarthur/aq

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aq

Crates.io Version Download Build Status

Extend jq for any data format. Currently supports JSON, TOML, and YAML.

📦 Installation

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.

Cargo

aq can be installed from Crates.io using Cargo, the Rust package manager.

cargo install aq-cli

🤸 Usage

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

License

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.