I am writing POSIX shell scripts quite often, mostly for speed and portability. Though, that might not even be needed, as bash might have gotten a speed increase compared to dash, ash and whatnot.

Here are some tests I plan to run to see if the speed difference is still the case

As my normal user shell I use fish since quite some time. I enjoy

  • a simple PS1 that shows the git branch, git status, truncated path where I am
  • autocompletion based on history
  • autosuggestions from -h or --help even if the tool has no autocompletions in other shells
  • abbr instead or alias is quite cool to not forget the actual commands. But I can live without

I dont use more features really. I have a couple of fish functions, and fish might just be a better bash with easier syntax. But bash is the standard, so I never use them anyways.

I wouldnt want to switch to zsh because it is weird permissively licensed. But if it is faster or better than bash, maybe?

I also like that fish is completely rewritten in rust. There is rusty-bash aka. sushi shell, anyone use that? Is is compatible with modules?

Are these extensions just scripts that you run on startup of the shell?

  • somegeek@programming.dev
    link
    fedilink
    arrow-up
    2
    ·
    18 hours ago

    Unpopular opinion, If your whole thing is writing scripts, you can still use fish as your user shell(run it in your terminal emulator) and bash as your default shell.

    bash is ok for small scripts. No need for anything fancy. For more complex scripts, just write them in something good like Lua or babashka(clojure)

    • pantherina@feddit.orgOP
      link
      fedilink
      arrow-up
      1
      ·
      18 hours ago

      Yes that is what I do. But bash snippets dont work in fish.

      I could learn something better like lua, but never used it