JQ Commands Cheat Sheet
Here is a cli commands cheat sheet for JQ command, you can use this as a quick reminder for basic commands with a brief description for each of the commands.
What is JQ command?
jq is a lightweight and flexible command-line JSON processor. jq is like sed
for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed
, awk
, grep
and friends let you play with text.
# To pretty print the json: jq "." < filename.json # To access the value at key "foo": jq '.foo' # To access first list item: jq '.[0]' # to slice and dice: jq '.[2:4]' jq '.[:3]' jq '.[-2:]' # to extract all keys from json: jq keys # to sort by a key: jq '.foo | sort_by(.bar)' # to count elements: jq '.foo | length' # print only selected fields: jq '.foo[] | {field_1,field_2}' # print selected fields as text instead of json: jq '.foo[] | {field_1,field_2} | join(" ")' # only print records where given field matches a value jq '.foo[] | select(.field_1 == "value_1")' # Execute a specific expression (print a colored and formatted json): cat path/to/file.json | jq '.' # Execute a specific script: cat path/to/file.json | jq --from-file path/to/script.jq # Pass specific arguments: cat path/to/file.json | jq --arg "name1" "value1" --arg "name2" "value2" ... '. + $ARGS.named' # Print specific keys: cat path/to/file.json | jq '.key1, .key2, ...' # Print specific array items: cat path/to/file.json | jq '.[index1], .[index2], ...' # Print all array items/object keys: cat path/to/file.json | jq '.[]' # Add/remove specific keys: cat path/to/file.json | jq '. +|- {"key1": "value1", "key2": "value2", ...}'
Check out the JQ command documentation .
You can also check our MegaSh cheatsheet tool, that has 150+ searchable linux cheat sheets in one page, so you never forget a command as you work again