Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
View Poll Results: What is your preferred Linux login shell?
So I have been forced by the need to work with Yocto / OpenEmbedded to learn enough bash to really grok what it is.....
a) It is actually a very small language.
b) As a Programming Language, it is truly awful. Please folks, just stop writing *sh scripts. Now.
c) There is a bunch of command line typing convenience stuff layered and interwingled on top of it. I suspect that stuff could be made more orthogonal and layered properly on top of a decent language.
maybe a follow up question would be interesting - what login shells have you used? Presumably bash is the preferred login shell of the majority of LQ members because it is the default on the majority of distros of LQ members.
That seemed a little dismissive. In fairness:
* Originally because it was there
* Now because it is familiar
* It has become familiar because it really is an excellent login shell!
maybe a follow up question would be interesting - what login shells have you used? Presumably bash is the preferred login shell of the majority of LQ members because it is the default on the majority of distros of LQ members.
Valid point. I've been doing Unix since 1984. I've used sh, ksh, zsh, csh, tcsh, and bash. Prior to bash, my favorite was ksh. I suppose I like bash because it's pretty much like ksh with a few extra features.
a) It is actually a very small language.
b) As a Programming Language, it is truly awful. Please folks, just stop writing *sh scripts. Now.
Yes, it is a language! Being thoroughly fluent in Bash script, I find it extremely convenient in spite of its idiosyncrasies. It's convenient because it's always right there at my fingertips.
In fact, I'm frequently frustrated that this reply box doesn't understand CTRL-A, CTRL-E, CTRL-D and ALT-D like Bash.
Valid point. I've been doing Unix since 1984. I've used sh, ksh, zsh, csh, tcsh, and bash. Prior to bash, my favorite was ksh. I suppose I like bash because it's pretty much like ksh with a few extra features.
I was dumped in tsch on DEC and Solaris machines in the mid to late 90s. When I started using Linux in the early 00s I persisted with tcsh since that's what I was used to. I was however told from the beginning that I should not use csh/tsch for scripts, so I was used to looping and branching in sh but not in csh. I'd find myself sometimes typing "bash" at my tcsh prompt to do some things, which after a while lead me to actually trying bash as my login shell. It took me a while to get it set up how I liked it, but once there I was very happy. Around this time I noticed that some of the wizards were using zsh, a few years later I gave it a try and again, after getting it set up to my liking I've been very happy with - the transition from bash to zsh is trivial compared to tcsh to bash.
So I have been forced by the need to work with Yocto / OpenEmbedded to learn enough bash to really grok what it is.....
a) It is actually a very small language.
b) As a Programming Language, it is truly awful. Please folks, just stop writing *sh scripts. Now.
c) There is a bunch of command line typing convenience stuff layered and interwingled on top of it. I suspect that stuff could be made more orthogonal and layered properly on top of a decent language.
Not wanting to engage in another pointless discussion, I ignored this when I first saw it... but since others have also taken note, my own two cents...
Quote:
a) It is actually a very small language.
No, it is actually a "shell", a command line interpreter which reads user input and executes commands. It also supports a variant of a powerful scripting language useful within that context.
Quote:
b) As a Programming Language, it is truly awful. Please folks, just stop writing *sh scripts. Now.
It is not a general purpose programming language, it is a special purpose language which supports direct user interaction with the kernel as well as deferred (scripted) execution, all with the same syntax. As such it is very specialized, but very useful for its intended purpose.
Quote:
c) There is a bunch of command line typing convenience stuff layered and interwingled on top of it. I suspect that stuff could be made more orthogonal and layered properly on top of a decent language.
Your understanding of what it is, what it does and why it is as it is, are exactly backward! It is an interactive command interpreter first, with an extended scripting syntax as one component.
As you indicate that you have been forced to work with it, and are obviously not knowledgable within the *nix paradigm, you view it negatively. It would be more useful to try to understand the how and why of it rather than criticize that which you do not understand.
Distribution: openSuSE Tumbleweed-KDE, Mint 21, MX-21, Manjaro
Posts: 4,629
Rep:
Hmm. Hmhm. I usually do a graphical login with kdm. What do I vote then? Jeremy?
When I go to a console I use bash since it is the default. When I have time (during retirement perhaps ) I should like to learn scripting and also try zsh.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.