I just found out about fish shell a few moments ago. I switched Konsole on KDE to use it instead of bash and am impressed so far. Might install it on the Pihole eventually. Good stuff, just wanted to share. :)

you are viewing a single comment's thread
view the rest of the comments
[–] 4 points 1 year ago* (last edited 1 year ago) (10 children)

How does it compare to bash?

I am a relatively casual Linux user (headless Pi-hole and grandma used to use Ubuntu for basic use cases) and have only ever used Bash, that too for relatively simple tasks.

  • source
  • hideshow 10 child comments
  • [–] 10 points 1 year ago (7 children)

    If you ever copy paste commands you don't understand (and aren't prepared to take a detour down a rabbit hole to figure out why they didn't work), stick with bash (or zsh).

    Fish isn't "posix compliant" which can make some things work (or not) unexpectedly.

    Don't get me wrong, it's a great shell and there are many reasons people emulate its behaviors in other shells, but I can't recommend it as a "newbie" or "casual user" choice.

  • source
  • parent
  • hideshow 7 child comments
  • [–] 3 points 1 year ago (6 children)

    I most definitely copy and paste commands that I don't understand. I even use LLMs to help write simple Bash scripts. :)

    I was just curious what the use cases are for this shell as I've only ever used Bash.

  • source
  • parent
  • hideshow 6 child comments
  • [–] 8 points 1 year ago* (5 children)

    It's a very user-friendly shell... except for the posix compliance.

    Everyone I know who (still) uses it daily accepts that they have to translate back and forth and still write scripts in bash (or sh).

    If you wanna give it a go, by all means. It's just as easy to switch as to switch back. You can always drop into bash and try a command again too.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 2 points 1 year ago (4 children)

    I never have to write scripts in bash after having switched to fish. I just write all my scripts in fish. 🤷‍♂️

  • source
  • parent
  • hideshow 4 child comments
  • [–] 5 points 1 year ago (3 children)

    It's unfortunately not that easy when you're using Linux at your job or want to be able to share your scripts with others...

    Like, Bash for scripting is quite cursed, but people will typically still prefer using it over learning a new language.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 1 point 1 year ago (1 child)

    Not to mention some environments don't let you install anything other than what's already on the box. Both sh and bash generally are available.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 1 year ago

    Ah, good point. In many cases, you also don't want to install an alternative shell, like if you're dealing with lots of containers and would need to make Fish available in each one.

    Although, I will say that more recent versions of Fish are available as a standalone executable, so you don't have to install it in the traditional sense. You can probably transfer it together with your script file in most cases. That's a relatively new/experimental feature of Fish, though, so no idea how well such a workflow goes in practice.

  • source
  • parent
  • [–] [S] 1 point 1 year ago

    I do not use bash for anything other than running what a casual Linux user would be running. I like it for the autocomplete functions, and the TAB feature to give you my own reasons! That's all I need in my setup, so it works way better than bash. :)

  • source
  • parent