Hey there, it’s summer 2022 and I wanted to share some updates on my shell tools for Mac admins.
No breaking changes or anything huge, but some nice incremental improvements all the same. When the JSONPath spec is finalized I’ll give
jpt a more considerable under the hood improvement. For now though, I’m pretty happy with tweaking their behaviors to act like you’d expect (print help and exit if no input detected), to get out of your way when you need to debug your scripts (xtrace is now disabled inside them) and to try to understand what you mean when you ask them a question (key path queries now accepted). Because the tools and technologies we make should serve us, not the other way around. I hope these tools can save you time, energy, sanity or all the above!
jpt the “JSON Power Tool” has been updated to v1.0.2 with all the nice additions mentioned. If you don’t know already
jpt can parse, query, and modify JSON every which way. It can be used as both a standalone utility as well as a function to be embedded into your shell scripts, without any other dependencies.
ljt the “little JSON tool” is
jpt‘s smaller sibling weighing in at only 2k. While it lacks the transformational powers of
jpt it can easily pluck a value out of JSON up to 2GB big and output results up to 720MB. It has been updated to v1.0.7 because dang it, even a small script can have just as many bugs as the big ones. Sometimes more if you’re not careful!
ljt now accept ye olde NextStep “keypath” expressions to help win over masochists who might still use
plutil to work with JSON! 😁 (I kid, I kid!)
jse, the “JSON string encoder” does this one thing and does it well. It can be used in conjunction with jpt when taking in arbitrary data that needs encoding only. It’s a svelte 1.4k (in minified form) and runs considerably faster that
jpt, so it’s ideal for multiple invocations, such as when preparing input data for a JSON Patch document. v1.0.2 is available here
shui lets you interact with your users with AppleScript but in the comfort of familiar shell syntax! You don’t need to know a line of AppleScript, although it does have the option to output it if you want to learn. Save time, brain cells and hair with
shui, while you keep on trucking in shell script. It has been updated to v20220704.
P.S. All these tools still work in the macOS Ventura beta 😅