You can add options if what you use isn’t there. :)

  • Mencoh
    link
    fedilink
    arrow-up
    8
    ·
    4 years ago

    I use Bash and I’m open to people explaining why a different shell would make a difference for me, unless it’s a matter of preference? For instance I’m not a huge Arch zealot, but by now I know all the pacman commands and I don’t see the point of switching.

    • Ephera
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      4 years ago

      I would recommend installing fish and just launching it in your terminal (just run ‘fish’), to play around with it.

      Fish has a lot of convenience features set up / enabled by default, so you can get a good impression of what’s possible without too much trouble setting it up.

      You may prefer going with zsh + oh-my-zsh for the long-term, as fish’s syntax is only similar to bash, not entirely compatible with it (they actually try to improve on it), and zsh is striving for bash compatibility, it’s just more work to get it set up with all of the features.

  • SirLotsaLocks
    link
    fedilink
    arrow-up
    7
    ·
    4 years ago

    BASH because I’m still not very good at it and I’m scared of using other non-defaults lol

  • fra
    link
    fedilink
    arrow-up
    7
    ·
    4 years ago

    I use bash because it’s the default and the alternatives are not that much better that it’s worth switching.

  • cheer
    link
    fedilink
    arrow-up
    5
    ·
    4 years ago

    when writing scripts, I mostly use Bash or posix sh, but I recently switched from Zsh to Fish for other uses. Also interested in how Nu is developing

    • ReK2
      link
      fedilink
      arrow-up
      5
      arrow-down
      1
      ·
      4 years ago

      you need bash for many system functions… if you uninstall it you better be a good systems engineer and know linux well not just as a user :)

  • wraptile
    link
    fedilink
    arrow-up
    5
    ·
    4 years ago

    Let me tell you about xonsh.

    It’s a modern full python programmable shell and it’s awesome! I’ve been using it for 2 years now and while it has some support issues having a full-blown python in your shell is just so convenient!
    There are lot of brilliant UNIX tools like grep, jq etc. however often I find myself in a place where I feel I could write 2 lines of python faster and easier than researching and messing around with processing tool such as jq — if you get this feeling than xonsh is the shell for you!

    Example of common use case, renaming files:

    $ ls                                                                                                                  
    bar.md  foo.md dir/gar.md
    $ for file in Path().glob('*'): $[mv @(file) @(file.name + '.bak')]                                                   
    $ ls                                                                                                                  
    bar.md.bak  foo.md.bak dir/gar.md.bak
    

    Here we glob through files recursively and suffix .bak to every one of them.

    Xonsh gives you a lot of flexibility in your shell and you should give it a go. There’s a web-based playground on https://xon.sh homepage that you can spin up to try xonsh hassle-free!

    • gaz
      link
      fedilink
      arrow-up
      1
      ·
      4 years ago

      Xonsh is great but it still doesn’t feel ready for production usage. I think you still can’t delete stuff from history which is a deal breaker for me.

  • sseneca
    link
    fedilink
    arrow-up
    4
    ·
    4 years ago

    zsh with starship as my prompt. on my main PC it looks like this:

    sort of not related because it’s shell-agnostic, but I really like starship because it has a bunch of cool plugins. e.g. at work, I have k8s and AWS plugins enabled, so it looks like this:

        • bbigras
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          4 years ago

          And it should get even faster: The devs are planning to address the major bottlenecks for 1.0 and do a ground up rewrite for 2.0. async prompt support is considered.

  • zeinok
    link
    fedilink
    arrow-up
    4
    ·
    4 years ago

    bash, I use for loop, stdin/out redirection and conditional operator somewhat often and I put them in script if I use a snippet a lot

    • jsgohac
      link
      fedilink
      arrow-up
      3
      ·
      4 years ago

      Fish is appealing to me, though I haven’t invested any time in linking a somewhat extensive set of bash functions, aliases, etc. But sometimes it is nice to drop down into it when working with many files of uncertain names and so on. Do you do much with fish_variables, etc? The documentation seems quite oblique.

        • jsgohac
          link
          fedilink
          arrow-up
          2
          ·
          4 years ago

          Whether people use fish as a main shell or a tool perform certain types of activities is not entirely clear to me. But in my bashrc I have several search functions, timestamps aliases which I find myself inadvertently calling from fish. I could port them over to fish_variables and such, but I don’t really want to maintain two sets of shell customisations. Another example is if you accidentally try to activate a vitualenv … I suspect it is not really meant to be a main shell, but thats why I asked.

  • khamer
    link
    fedilink
    arrow-up
    4
    ·
    4 years ago

    I also use bash - I tried zsh, but there was a startup delay I couldn’t stand.

    Plus, bash has a lot of features that you just need to turn on (mostly using shopt) - things like autocd, cdspell/dirspell, cmdhist, direxpand, extglob, globstar, histappend, should probably just be on by default these days, as well as a HISTTIMEFORMAT that includes date and time.