I’ve been trying nushell and words fail me. It’s like it was made for actual humans to use! 🤯 🤯 🤯

It even repeats the column headers at the end of the table if the output takes more than your screen…

Trying to think of how to do the same thing with awk/grep/sort/whatever is giving me a headache. Actually just thinking about awk is giving me a headache. I think I might be allergic.

I’m really curious, what’s your favorite shell? Have you tried other shells than your distro’s default one? Are you an awk wizard or do you run away very fast whenever it’s mentioned?

  • communism@lemmy.ml
    link
    fedilink
    arrow-up
    22
    arrow-down
    1
    ·
    22 hours ago

    Nushell looks cool but I prefer to stick with the POSIXes so that I know my scripts will always work and syntax always does what I expect it to. I use zsh as a daily driver, and put up with various bashes, ashes, dashes, that come pre-installed with systems I won’t be using loads (e.g. temporary vms).

    • nimpnin@sopuli.xyz
      link
      fedilink
      arrow-up
      22
      ·
      21 hours ago

      Always confuses me when people say this. You can use multiple different shells / scripting languages, just as you can use multiple programming languages.

      • Ferk@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        2 hours ago

        If you want your scripts to “always work” you’ll need to go with the most common/standard language, because the environments you work on might not be able to use all of those languages.

        • nimpnin@sopuli.xyz
          link
          fedilink
          arrow-up
          1
          ·
          1 hour ago

          I mean if all your scripts are fully general purpose. That just seems really weird to me. I don’t need to run my yt-dlp scripts on the computational clusters I work on.

          Moreover, none of this applies to the interactive use of the shell.

          • Ferk@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            edit-2
            6 minutes ago

            It’s not only clusters… I have my shell configuration even in my Android phone, where I often connect to by ssh. And also in my Kobo, and in my small portable console running Knulli.

            In my case, my shell configuration is structured in some folders where I can add config specific to each location while still sharing the same base.

            If you don’t mind that those scripts not always work and you have the time to maintain 2 separate sets of configuration and initialization scripts, and aliases, etc. then it’s fine.

            • nimpnin@sopuli.xyz
              link
              fedilink
              arrow-up
              1
              ·
              40 seconds ago

              those scripts not always work

              This feels like ragebait. I have multiple devices, use fish whenever that can be installed and zsh/bash when not, and have none of these issues.

      • communism@lemmy.ml
        link
        fedilink
        arrow-up
        9
        ·
        20 hours ago

        I know that. I just don’t have a use case for alternative shells. Zsh works fine for me and I know how it works. I don’t have problems that need fixing, so I don’t need to take the time to learn a new, incompatible shell.

      • elmicha@feddit.org
        link
        fedilink
        arrow-up
        7
        arrow-down
        3
        ·
        17 hours ago

        Some people work on machines where they are not allowed to install anything.

      • esa@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        10
        ·
        edit-2
        20 hours ago

        Yeah, there should be a clear separation between scripts, which should have a shebang, and interactive use.

        If a script starts acting oddly after someone does a chsh, then that script is broken. Hopefully people don’t actually distribute broken script files that have some implicit dependency on an unspecified interpreter in this day and age.

      • communism@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        20 hours ago

        They have !/bin/sh shebangs. /bin/sh is a symlink, in my case to zsh. I like using one language.

    • phantomwise@lemmy.mlOP
      link
      fedilink
      arrow-up
      11
      ·
      21 hours ago

      I don’t really mind having a non-POSIX shell since it doesn’t prevent bash scripts from working, but I get that if you want portability bash is still best since it’ll work mostly anywhere.

      • 4am@lemmy.zip
        link
        fedilink
        arrow-up
        2
        ·
        20 hours ago

        If I can shebang nutshell (assuming all the builtins from bash or even sh work) and pass a flag to remove all the fancy UI-for-humans formatting so that piped commands int eh scripts work, then I think this is incredible.

        Yeah having this installed along side other more “standard” shells is fine I guess, but it looks like maybe it has some neat functionality that is more difficult in other shells? I guess I’d need to read up on it more but having a non-interactive mode for machines to read more easily would be a huge plus for it overall. I suppose that depends on what it offers/what it’s trying to accomplish.