New favorite tool 😍

  • ReluctantMuskrat@lemmy.world
    link
    fedilink
    arrow-up
    8
    ·
    6 months ago

    As a long-time bash, awk and sed scripter who knows he’ll probably get downvoted into oblivion for this my recommendation: learn PowerShell

    It’s open-source and completely cross-platform - I use it on Macs, Linux and Windows machines - and you don’t know what you’re missing until you try a fully objected-oriented scripting language and shell. No more parsing text, built-in support for scalars, arrays, hash maps/associative arrays, and more complex types like version numbers, IP addresses, synchronized dictionaries and basically anything available in .Net. Read and write csv, json and xml natively and simply. Built-in support for regular expressions throughout, web service calls, remote script execution, and parallel and asynchronous jobs and lots and lots of libraries for all kinds of things.

    Seriously, I know its popular and often-deserved to hate on Microsoft but PowerShell is a kick-ass, cross-platform, open-source, modern shell done right, even if it does have a dumb name imo. Once you start learning it you won’t want to go back to any other.

    • caseyweederman@lemmy.ca
      link
      fedilink
      arrow-up
      8
      ·
      6 months ago

      I appreciate you sharing your perspective. Mine runs counter to it.
      The more PowerShell I learn, the more I dislike it.

      • jelloeater - Ops Mgr@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        ·
        6 months ago

        As someone who spent 2 years learning and writing PowerShell for work… It’s… Okay. Way easier to make stuff work then bash, and gets really powerful when you make libraries for it. But… I prefer Python and GoLang for building scripts and small apps.

      • ReluctantMuskrat@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        6 months ago

        I do. Currently I use it mostly for personal stuff as part of my time spent on production support. Importing data from queries, exporting spreadsheets, reading complex json data and extracting needed info, etc. In the past when I was on DevOps used it with Jenkins and various automation processes, and I’ve used it as a developer to create test environments and test data.