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.
A new way to parse ASCII or Unicode plain text tables using jc and jq or jello. No need for grep, sed, or awk!
Use jc with Nornir to parse the output of commands run on remote hosts.
Use a jc Output and/or Serializer Module to parse the output of commands run on Saltstack Minions.
Use the jc community.general Ansible filter plugin to parse the output of commands run on remote hosts.
Python has great exception-handling with nice traceback messages that can help debug issues with your code. Here’s an example of a typical traceback message: I usually read these from the bottom-up to zero-in on the issue. Here I can see that my program is trying to pop the last item off a list called parsed_line,Continue reading “More Comprehensive Tracebacks in Python”
jello works similarly to jq but uses the python interpreter, so you can iterate with loops, comprehensions, variables, expressions, etc. just like you would in a full-fledged python script.