jq Arrays and Objects/Get all leaf values

Return every scalar value in a document.

Section: Paths and Deep Updates

Get all leaf values

bash
bash
echo '{"user":{"name":"alice","roles":["admin","dev"]}}' | jq '.. | scalars'
Explanation

Recursive descent plus `scalars` is a good way to inspect content quickly.

Learn the surrounding workflow

Compare similar commands or jump into common fixes when this command is part of a bigger troubleshooting path.

Related commands

Same sheet · prioritizing Paths and Deep Updates
Find all scalar paths
List paths that end in scalar values.
OpenIn sheetbashsame section
Find matching nested objects
Search recursively for objects containing a field.
OpenIn sheetbashsame section
Read value by explicit path
Look up a nested value using a path array.
OpenIn sheetbashsame section
Set value by explicit path
Write a nested value using a path array.
OpenIn sheetbashsame section
Delete multiple paths
Remove several nested paths at once.
OpenIn sheetbashsame section
First array item
Get the first element.
OpenIn sheetbash1 tag match