#!/bin/bash # Usage: configcompare file1.json file2.json # configcompare file1.yaml file2.yaml FILE1=$1 FILE2=$2 EXT="$FILE1##*."
diff -u file1_normalized.json file2_normalized.json Better yet, use a structural diff tool that understands paths: configcompare
jq 'del(.metadata.generated, .timestamp)' file1.json .timestamp)' file1.json diff <
diff <(grep -v '^[[:space:]]*"version"' file1.json) \ <(grep -v '^[[:space:]]*"version"' file2.json) For deeply nested configs, use git diff --no-index with color: (grep -v '^[[:space:]]*"version"' file1.json) \ <