Hacker News new | ask | show | jobs
by mmgutz 1592 days ago
If you're going to use string literal, then

  echo '{"name": "JP", "object": {"fruit": "Orange", "point": {"x": 10, "y": 20}, "number": 17}, "sunday": false}'
is fine as a script
1 comments

All fun and games until you need quoting. Quoting in shell scripts is already hellish enough, but layering JSON quoting on top of that is a road to madness.
Combining here-string with `jq` (if you need variables), is plenty good enough. You'd need a single jq invocation.
Yes, `jq` would work fine, but so would `jo`. The point is, if there is anything more than the simplest dynamic values, constructing valid JSON just with POSIX shell is a huge pain.