#!/bin/bash # Read JSON input from stdin file_contents=$(cat LEAFheaders.json) echo $file_contents # Extract headers from JSON input headers=$(echo $file_contents | jq -c '.headerTemplates[]') # Loop over headers and build insert statement insert_stmt="INSERT INTO LEAFHeaders (Header, HeaderRegex, ValueRegex, Nullable) VALUES " while read -r header; do header_name=$(echo "$header" | jq -r '.Header') header_regex=$(echo "$header" | jq -r '.HeaderRegex') value_regex=$(echo "$header" | jq -r '.ValueRegex') nullable=$(echo "$header" | jq -r '.Nullable') # Escape single quotes in header name and regex strings header_name=${header_name//\'/\'\'} header_regex=${header_regex//\'/\'\'} value_regex=${value_regex//\'/\'\'} # Build insert statement for header insert_stmt+="('$header_name', '$header_regex', '$value_regex', $nullable)," done <<< "$headers" # Remove trailing comma and print insert statement as CSV echo "${insert_stmt%,};" | tr -d '\n'