this post was submitted on 25 Aug 2025
98 points (99.0% liked)

Linux

12813 readers
178 users here now

Welcome to c/linux!

Welcome to our thriving Linux community! Whether you're a seasoned Linux enthusiast or just starting your journey, we're excited to have you here. Explore, learn, and collaborate with like-minded individuals who share a passion for open-source software and the endless possibilities it offers. Together, let's dive into the world of Linux and embrace the power of freedom, customization, and innovation. Enjoy your stay and feel free to join the vibrant discussions that await you!

Rules:

  1. Stay on topic: Posts and discussions should be related to Linux, open source software, and related technologies.

  2. Be respectful: Treat fellow community members with respect and courtesy.

  3. Quality over quantity: Share informative and thought-provoking content.

  4. No spam or self-promotion: Avoid excessive self-promotion or spamming.

  5. No NSFW adult content

  6. Follow general lemmy guidelines.

founded 2 years ago
MODERATORS
 

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
[–] victorz@lemmy.world 3 points 3 days ago (2 children)

So you want the features of fish? Why'd you go back to zsh then?

[–] pressanykeynow@lemmy.world 2 points 3 days ago (2 children)

I use fish on a couple of devices, but damn it's frustrating when you want to do a fast and simple bash scripting and it doesn't work. Frankly now I think it would have been better to spend some time to setup zsh.

[–] victorz@lemmy.world 4 points 2 days ago (1 children)

but damn it's frustrating when you want to do a fast and simple bash scripting

Of course it's going to be frustrating to try to write bash scripts and then try to run them as fish scripts.

What you should be doing is writing fish scripts and running them as fish scripts. That is a much more pleasant experience. 🙃

[–] pressanykeynow@lemmy.world 1 points 2 days ago (1 children)

I know. I just don't want to. There's no point in learning fish scripting, you won't use them anywhere unless you want your colleagues to hate you because now they also have to learn it for no reason.

[–] victorz@lemmy.world 2 points 2 days ago

I only use my scripts privately and my scripts are now shorter and easier to read and maintain. Also I use it as my everyday shell, and I couldn't be happier with a shell right now, that I know of. The documentation is also extremely good. Simple to understand, and a small language.

There's a big point to learning it if you like its design principles. But if you don't, then there isn't. 👍

Enjoy whatever shell you like!

[–] foobaz@lemmy.world 3 points 2 days ago (1 children)

I still write all my scripts for bash (or busybox sh) with a shebang, then call it from fish.

[–] pressanykeynow@lemmy.world 1 points 2 days ago

I do too but then you want to just run basic for i;do x;done and you need to translate it to fish syntax.

It wasn't much of a problem but this thread actually convinced me that there's less profit from fish than using something like an old oh-my-zsh(probably much easier to setup now).

Is it good if you setup your new pc, don't have your configs at hand and want a nice terminal with convenient features? Definitely. But I think it's better to spend 5 minutes afterwards to move away from it.

[–] Tangent5280@lemmy.world 3 points 3 days ago (1 children)

I considered Fish but decided against it because of POSIX compliance

[–] victorz@lemmy.world 3 points 3 days ago (2 children)

I'm not trying to change your opinion, just curious: what is the reason for wanting POSIX compliance? You often share scripts? Dotfiles perhaps?

[–] Tangent5280@lemmy.world 2 points 2 days ago (1 children)

I am shitty at shell scripting, so I often use other people's scripts from the internet with some minor tweaks. I've also put a lot of time into learning the nuances of zsh so there is also a lot of the sunk cost effect going on.

Also, and this is an assumption, I think other shells just have a lot more online resources you know? I have not yet found any problems or ideas I've had that someone else haven't also had and solved.

[–] victorz@lemmy.world 3 points 2 days ago

Cool, thanks, that explained everything for me. 😁

[–] WhatsHerBucket@lemmy.world 3 points 3 days ago (2 children)

Fish isn’t posix compliant, so some scripts I use had issues. I'll play devil's advocate, why do you like fish? :)

[–] 0xD@infosec.pub 3 points 2 days ago

I like fish because it requires no setup to be nice to use and the scripting is more intuitive when not doing it constantly.

[–] victorz@lemmy.world 6 points 3 days ago

so some scripts I use had issues

I just rewrote all of my scripts in idiomatic fish. 😄

why do you like fish? :)

It made my scripts 50% shorter on average, and 100% more legible. Short and simple. The code is easier to read and maintain, IMO. Less magic syntax that you need to look up in the bash manual* every dang time. You come back to your scripts after a few years and you just instantly can see what they do, without comments.

(*) Speaking of the manual. The bash manual is quite long. And the zsh manual is a f—ing mess, split up into so many sections, and the thing I want to find is never where I first look, so I just go into the zsh "all" manual, which is humongous and difficult to navigate, basically just a cat of all the different zsh manuals.

Fish has a short and sweet manual because the language is very small, and every command has its own manual page as well, which just makes sense on some level. Also it's available as a web page by typing help. Very convenient.

Very well thought out. 👌