HackerTrans
TopNewTrendsCommentsPastAskShowJobs

wwader

no profile record

Submissions

Jaq 2.0 released with lots of improvements and support for jqjq

github.com
2 points·by wwader·2 anni fa·0 comments

comments

wwader
·3 mesi fa·discuss
Assume input is an array you can do it several ways depending on what you want:

    # output each value in the array separately 
    .[]

    # output each value but transform it in some way
    .[] | . * 2


    # map each value into a new array
    map(. * 2) 

    # same as above but manual iterate/collect
    [.[] | . * 2]
wwader
·11 mesi fa·discuss
Same! and jq's regexp functions are quite powerful for transforming text into something more structured:

  $ echo -e "10:20: hello\n20:39: world" | jq -cR 'capture("^(?<timestamp>.*): (?<message>.*)$")'
  {"timestamp":"10:20","message":"hello"}
  {"timestamp":"20:39","message":"world"}


  $ echo -e "10:20: hello\n20:39: world" | jq -Rn '[inputs | capture("(?<t>.*): (?<m>.*)$").m] | join(" ")'
  "hello world"
Also using inputs/0 etc in combination with reduce and foreach it's possible to process streams of text that might not end.
wwader
·anno scorso·discuss
Very nice! thanks for building this
wwader
·anno scorso·discuss
The jaq author is working on a formal specification of jq https://github.com/01mf02/jq-lang-spec. I think it has also help that there are several implementations of jq now like, gojq, jaq and jqjq, that has helped finding edge cases and weird behaviours.
wwader
·anno scorso·discuss
The sqlite source includes a CLI tool called showdb that is quite nice for poking around in database files
wwader
·2 anni fa·discuss
Note on (b): As i understand it JSONPath by design is limited to only be able to select things from the input, so can't build a new object, array etc.
wwader
·2 anni fa·discuss
open -a is nice, i use it with alias, ex:

  alias qt='open -a "quicktime player"'
  alias vlc='open -a "vlc"'
wwader
·2 anni fa·discuss
Yeap the syntax and semantics is quite different to other languages and it really took me a long time and deep understanding to really appreciate how expressive and damn well designed it is.
wwader
·2 anni fa·discuss
As a heavy jq user and now a days also maintainer i say welcome! happy to help if you run into some problem
wwader
·2 anni fa·discuss
Yeap love things like that, ex https://www.imdb.com/title/tt1787791/ and the mystery show podcast. Let me know if you know any!
wwader
·2 anni fa·discuss
Reminds me of the documentary Kim's video https://www.imdb.com/title/tt24132144/ recommended!
wwader
·2 anni fa·discuss
I think the alpine package format do use this in combination with tar being similar https://wiki.alpinelinux.org/wiki/Apk_spec
wwader
·2 anni fa·discuss
Nice haven't seen. Shameless plug fq support elf https://github.com/wader/fq and will have a look if i could lend some ideas from llvm-readelf
wwader
·2 anni fa·discuss
I once dumped a cassandra cluster to json (10ish gb i if remember correctly) and used jq to do queries