In this article I give a quick snapshot of what it’s like to work with JSON in various traditional and next generation shells. Traditional shells like Bash and Windows Command Prompt (cmd.exe) don’t have built-in JSON support and require 3rd party utilities. Newer shells like NGS, Nushell, Oil, Elvish, Murex, and PowerShell have JSON serialization/deserialization and filtering capabilities built-in for a cleaner experience.
Best practices when adding a JSON output option to your command-line application.
Do one thing well. For command-line utilities to do their one thing “well” they must include standardized machine-readable output. Linux and all of its supporting GNU and non-GNU utilities should offer JSON output options.