• Tangent5280@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    4 hours ago

    How do you get complex data structures to work? I was alienated from scripting on zsh because I wanted something like a dict and realised I would have to write my own implementation. Is there a work around for that?

    • tal@lemmy.today
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      2 hours ago

      I mean, there’s a point in data structure complexity where it’s useful to use Python.

      But as to dicts, sure. You’re looking for zsh’s “associative array”. Bash has it too.

      zsh

      $ typeset -A mydict
      $ mydict[foo]=bar 
      $ echo $mydict[foo]
      bar
      $
      

      bash

      $ typeset -A mydict
      $ mydict[foo]=bar
      $ echo ${mydict[foo]}
      bar
      $
      
      • Tangent5280@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        2 hours ago

        This will do nicely - I had several workflows where I’d hit an API and get a massive super nested JSON as output; I’d use jq to get the specific data from the whole thing and do a bunch of stuff on this filtered data. I pretty much resigned to using python because I’d have successively complicated requirements and looking up how to do each new thing was slowing me down massively.