What is your favorite shell
Submitted by kamaraju
| sh |
![]() 4% | 35 votes |
| bash |
![]() 79% | 694 votes |
| csh |
![]() 3% | 28 votes |
| dash |
![]() 0% | 4 votes |
| esh |
![]() 1% | 12 votes |
| ksh |
![]() 1% | 14 votes |
| zsh |
![]() 9% | 80 votes |
| Total 875 votes |
systems.
I started back when csh was the only fancy shell but I never got into it.
[ Parent ]
[ Send Message | View Steve's Scratchpad | View Weblogs ]
I use bash on all my hosts, where possible.
I manage SCO, and Solaris machines as well as SuSe and Debian GNU/Linux installations and on all of them I have GNU Bash.
I find being forced to use the "plain" /bin/sh on Solaris machines especially painful, mostly because I can't use any of the handy keyboard shortcuts, or completion functionality.
Ditto with SCO, which is even worse when it is in a virgin installation without any GNU tools.
I suspect 99% of Linux users will choose bash, if only because it is the default choice.
Steve
-- Steve.org.uk
[ Parent ]
( same problem with IE under windows ) but can anyone give me one point where bash beats zsh ?
[ Parent ]
I mean tab completion to apt-get install...taking laziness to the next level.
[ Parent ]
[ Send Message | View Steve's Scratchpad | View Weblogs ]
You can do that with bash too - just source /etc/bash_completion in your login script, eg:
if [ -f ~/.bash_completion ]; then . /etc/bash_completion fi
Steve
-- Steve.org.uk
[ Parent ]
have you tried the zsh completion ? have you programmed your one ?
bash is really outdated compared with the new zsh completion system. it's the same for file globbing, for modern syntax, for ...
anyway, bash is bigger and slower than zsh (according to some little tests i've done. it's not very scientific but the time command can be a good clue)
[ Parent ]
[ Send Message | View Steve's Scratchpad | View Weblogs ]
No I haven't, but the original example referenced in the parent "apt-get ins[TAB] package-name-fragment[TAB]" is supported in Debian's bash package, so I thought it was worth mentioning.
I use a sufficiently large number of different operating systems that I only really care about shells which are available on all of them.
(This is also why I stick to Perl instead of using Python, or Ruby, most of the time - it's readily available on systems like SCO Unixware and Sun Solaris without having to compile).
In practise this means I restrict myself to only /bin/sh, and bash. Whilst I know both have flaws, and alternatives exist I don't want to rely upon their presence.
Steve
-- Steve.org.uk
[ Parent ]
agree with you for sticking perl instead of python, ruby ... because you have to learn new syntax and practice before have some hypotetical gain.
disagree for zsh because a lot of things are the same for the two shells, no need to start at the begin. Just enjoy new features.
Really, Steeve, just chsh ... without change your habits. I'll enjoy later!
[ Parent ]
[ Send Message | View Steve's Scratchpad | View Weblogs ]
Tell you what I will continue to enjoy my Sainthood - and switch to zsh on my primary machine for the next week and see how it compares...
Steve
-- Steve.org.uk
[ Parent ]
[ Parent ]
http://mirbsd.mirsolutions.de/?mksh
It's even in Debian now.
If you've used mksh, then sit on a GNU bash system
and press ^W, you will know why I hate it... and
for scripting, it's far superiour (co-routines,
better pattern matching, etc.).
[ Parent ]
At work we have AIX 4.x boxen, and they have antique csh and korn on them - working with them is SO HARD. I can't believe I once use to use csh on Sun OS.
People keep telling me that zsh is the "next generation" of Bash. I've used it once or twice, but I really need to use it for a lot longer to see if I like it.
--
"It's Not Magic, It's Work"
Adam
[ Parent ]
I might work my way over to zsh in time -- as it's mostly bash, with *more* features. Csh has broken redirection and makes for non-standard scripts. I consider it evil :-)
I think tab-completion is cute -- but I don't really feel the need for extended completion. It's nice, but not a must. But having GNU readline available is nice (not specific to bash, ofcourse).
My only complaint with bash/ksh is that array notation, and general advanced scripting features has a bit convoluted syntax -- which is why I think schemesh, or even a python derivative might be a better way to go. Making a "better" bash doesn't make much sense to me, because sh is all about portability and standard features.
If you want something pretty, use python, ruby or the scripting language of your choice. This is also one of the reasons why I don't like perl; I don't thin it has it's place. If I can't do it with read, grep, awk, sed, sort, uniq and bash -- then it's a job for a "real" programming language.
[ Parent ]

4%