PowerShell article
Brian Grossman
brian.grossman at gmail.com
Thu May 12 19:55:47 MDT 2022
Indeed json does require more parsing, but it's a standard and well
supported format. The semantics represented by the json are arbitrary, but
at least the parsing is handled.
The tree|jq vs find example I gave just used the tool I had at hand to
demonstrate json output. It's a poor example, unless you're trying to
teach people to not overthink a problem. Thank you for the correction, and
fwiw even though I could have jq do the sorting, I would likely just pipe
it through sort anyway. I still love the freedom of piping arbitrary data
around, and even torturing it with awk.
Are you familiar with xpath? JQ's syntax reminds me of that, but a bit
saner. You're welcome for nightmares brought forth by the mention of xpath.
Brian
On Thu, May 12, 2022 at 6:19 PM Bob Proulx <bob at proulx.com> wrote:
> Hi Brian,
>
> Brian Grossman wrote:
> > Imagine bash friends with an option for more structure than arbitrarily
> > formatted text. I would occasionally like an option to emit json from
> many
> > commands in order to avoid parsing. As a poor example:
> >
> > tree -Jp -L 3 | jq -r '.. | objects | select( .type? == "file" ) |
> > .name | select( test( "[.]ini$" ))'
> >
> > is kinda-sorta-almost equivalent to
> >
> > find -maxdepth 3 -type f -name \*.ini
>
> It is equivalent to this though.
>
> find . -maxdepth 3 -name '*.ini' -printf "%f\n"
>
> Note that to make them reproducible we would need to sort the outputs
> to ensure they have the same sort order for comparison. "| sort" for
> both of them would be good.
>
> Since I don't work with jq everyday I find that set of commands
> mystifying. I am sure it would make sense if I were to use it more.
> But isn't the json one requiring much more parsing?
>
> Bob
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.nclug.org/pipermail/nclug/attachments/20220512/545c22d2/attachment.htm>
More information about the NCLUG
mailing list