Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I am new to Ubuntu. Looking for the meaning of shell, I got a list of many different shells.

So I'd like to know:

  • Which shell is used by default in Ubuntu?
  • What other shells are available?
  • Is there any advantage in switching to another shell?
share|improve this question
    
I've used c shell before on other servers, and it didn't even allow me to backspace or view previous commands using the up key, by default anyways, so I always switched to bash. –  jumpnett Jul 9 '12 at 23:35

4 Answers 4

up vote 3 down vote accepted

The term "shell" often gets misused when referring to Linux. What the above two answers are referring to is the bash shell, which is the syntax used in simple scripts and the terminal. What I think you're looking for is a shell interface, or more formally a "desktop environment," or DE. DEs are basically how your desktop looks and is organized.

Probably the most famous and widely-used DE was Gnome 2, which was implemented by the majority of popular Linux distributions. The reason there's so much talk about which "shell" (DE) is best is probably because of Gnome 3.

The Ubuntu team began development of the current DE, Unity, around the same time Gnome 3 entered development. When they change Ubuntu to ship with Unity as the standard, there were a lot of complaints. Even more troubling was the fact that Gnome 3 was released to mixed (and poor) reviews, meaning that the next generation of the most popular DE and the DE used by the most popular distro were 1) different and 2) poorly recieved.

Unity has been greatly revamped over the past few releases and is now pretty cutting-edge. Gnome 3 has also received significant overhauls, so I'd say they're both viable options, though Unity is probably easiest to stick with, since it's already installed. Other environments Ubuntu supports well include XFCE and LXDE, which are designed for lower-end hardware.

There is no "best" desktop environment, and if you want to switch it's entirely up to you. However, it's probably best to learn the basics of Ubuntu and Linux in general before moving on to replacing your desktop.

To sum up:

  • Unity is the desktop you're using right now. It comes standard with Ubuntu and is given the most support because it is developed by Ubuntu developers.

  • Gnome 3 is said to be a bit confusing overall, but it's also got good support and looks nice.

  • XFCE is the most popular lightweight desktop. Feels fairly similar to Windows.

  • LXDE is a fairly recent competitor to XFCE.

  • Gnome 2 is available in Ubuntu by logging out and browsing the DE menu. Very stable, but no longer updated.

share|improve this answer

Most users don't need to care about different shells. What you'll probably need is to be able to use it to launch some commands the old way; you can open a text-shell using a terminal emulator like gnome-terminal, xterm, etc. which look like this

1

Or you can go to a virtual terminal pressing CTRL+ALT+F1 or F2, F3, F4, F5, F6. Yes, you have six of them and like like this

2

And log in with your credentials, username and password.

Anyway all of these use BASH as default, that is perfect for almost everything. There are many others you can find some infos on wikipedia, look for "Unix shell".

Stick with BASH unless you find yourself in a rare corner case because many how-tos and tutorials out there refer to it.

When using scripts things are a bit different because the default shell, the one linked to /bin/sh is dash

share|improve this answer
    
I avoided to talk about graphical shells on purpose, because I thought the OP was interested in textual ones –  Dariopnc Jul 11 '12 at 12:31

I believe Ubuntu uses BaSH which is Bourne-Again Shell and is an upgrade over the original shell (Bourne Shell)

That's the only shell I use and you can install others but there's really no need to.

Update: From a terminal, type echo $0 to see what shell you're running. That's $ then a zero.

share|improve this answer

3 questions in one, let's see:

Which shell is used by default in Ubuntu?

That differs. In some places, it is Dash, in most cases Bash. To see which is set for your user, simply open a terminal window and execute echo $SHELL. To check for all users on your system, you can take a look at the /etc/passwd file, where for each user capable of logging into the system the default shell is specified.

What other shells are available?

This very much depends on which you've got installed. Both above mentioned shells come by default, others are available in the repositories. For a list of shells, you can take a look at Wikipedias Category:UNIX shells.

Is there any advantage in switching to another shell?

Depends on which you are currently using, and what your goals are. Some shells provide additional (and quite extensive) features, such as e.g. ZShell -- while others are more minimalistic, using less ressources (e.g. Dash compared to Bash). As stated above, you may check with the Wikipedia category to take a look at different shells and what they have to offer.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.