#!/bin/bash

OUTPUT=()
while read -r -d $'\0' FILE;
do
  FILENAME=$(basename "$FILE" | tr '\n' ' ')
  FOO_VALUE=$(jq -r '.foo // "NOT FOUND"' "$FILE" 2> /dev/null || echo 'INVALID JSON')
  OUTPUT+=("$FILENAME $FOO_VALUE")
done < <(find . -name '*.json' -print0)

printf "%s\n" "${OUTPUT[@]}" | sort
