Filter YAML array entries by a field
Build a paste-ready command, then review its compatibility and effects before running it.
yq '.services[] | select(.enabled == true) | .name' config.yamlread-onlyno known side effects Compatibility
LinuxVerified for Linux using posix, bash, zsh syntax.
Operational knowledgereview due 2027-01-20
Requirementsyqyq must be installed and available on PATH.
Version supportyq Current supported releasesVerified for linux using posix, bash, zsh syntax; consult compatibility notes for platform-specific differences.
Expected signalsapiRepresentative successful output; values vary with the selected target and system state.
Known errorsyq: command not foundyq is missing or is not available on PATH.
Verifyyq '.services[] | select(.enabled == true) | .name' config.yamlThe output matches the expected target and exits without an error.Rollback noteNot required: this command is read-only and does not change system state.
Command breakdown
01yqCommandRuns the yq stage of this one-liner.
02'.services[] | select(.enabled == true) | .name'ArgumentPasses '.services[] | select(.enabled == true) | .name' to yq.
03config.yamlArgumentPasses config.yaml to yq.
Example input
yq '.services[] | select(.enabled == true) | .name' config.yaml
Illustrative output — exact values vary by system and data.
Official sources