5

I'm a brand new user of Linux/Ubuntu (14.04)

I am looking for BASH.

I clicked the UbuntuSoftwareCenter at the left and then the "All Software" icon at the top. I enter "Bash" into the search field at the top right, and at the top of the results is "GNU Bourne Again SHell" and it's flagged as "Installed" (green check, etc.) But I cannot "do" anything with it from there - I cannot open the program, drag it to the left menu bar, etc. Nothing.

So, still in Ubuntu Software Center, I instead click "Installed" at the top , but now the program "GNU Bourne Again SHell" is nowhere to be found.

So, I closed the window then clicked "Dash" and entered "BASH" or "Bourne" or "SHell" (in varying capitalizations), and I also opened up the "Applications" section to show all... there's no "BASH"

Can anyone explain what I was seeing and where I can find the supposedly installed BASH, and pin it to the left menu?

1
  • 1
    It's somewhat similar to Windows: In Windows console-commands like 'cd' are builtin to the cmd.exe. You cannot find them in the startmenu, you need to launch the console. The additional difference between Linux and Windows is that in Windows you ususally only have one "shell" (ie. the cmd-shell) and only one "terminal (emulator)" - thus they are 'merged' into one. cmd.exe = shell + terminal-emulator. Strictly speaking, though, this is not completely correct in the Win world but it's enough to understand the way things work ;-)
    – ljrk
    Sep 23, 2015 at 11:13

3 Answers 3

9

Many programs in Ubuntu need something or the other to run in. Graphical programs like the file manager (typically Nautilus) or the browser (Firefox, or Google Chrome, for example) need an instance of the X Window System (typically provided by X.Org's X server) to run.

Correspondingly, command-line programs like Bash, apt-get, lynx, etc., to be run interactively, need a terminal emulator to run. By default, Ubuntu has GNOME Terminal, XTerm and the TTYs (managed by getty, accessible by pressing CtrlAltF1-F6 - back to GUI by CtrlAltF7) via which you can interact with command line programs.

To run a command-line program, then, you need to run a terminal emulator (for example, GNOME Terminal) first.

The terminal emulator programs typically run bash by default (since that is the default login shell for users in Ubuntu). Therefore, to run bash, usually all you need to do is run Terminal.

Without a terminal to run in, when you started Bash or Dash, they probably quit immediately. Nothing to see here, folks.

See:


Making a launcher icon for a command line program is a different issue. For that, see How can I edit/create new launcher items in Unity by hand?, and use Terminal=true instead of Terminal=false.

4
  • I would add a parentheses that if you curiously pressC+A+F#, you can go back with C+A+F7!
    – Kroltan
    Sep 23, 2015 at 2:55
  • 1
    @Kroltan perhaps I should link to askubuntu.com/a/157620/158442.
    – muru
    Sep 23, 2015 at 2:56
  • @muru Yeah, but if someone coughlike mecough presses that out of curiosity, they won't have a browser to see that page :P
    – Kroltan
    Sep 23, 2015 at 2:58
  • 1
    @Kroltan sadly accessing AU via lynx or its kin is difficult. I added a note about C-A-F7.
    – muru
    Sep 23, 2015 at 3:05
4

bash is a shell; basically a program that reads commands and executes them. It is one of the interfaces between the kernel and the user.

I do not know what do you call "apps", but if I understand correctly, bash is under the level of what you call "an app". But it's a fundamental part of the system...

Have a good read here: http://www.tutorialspoint.com/unix/unix-getting-started.htm --- the diagram below is a graphic example of a Unix system architecture from that site (it's a link, not a copy...)

enter image description here

You can run bash in a terminal, in a virtual console, in a background program. Your system is probably running several instance of bash right now.

As far as any Unix system is designed, the graphical interface and the graphical applications are just another kind of application programs --- this is one of the reason that Ubuntu (and all other Unixes) can use several different graphic interfaces.

2

The terminal is NOT BASH. Make sure you remember that :)

Bash is a shell - "a program that reads commands and executes them. It is one of the interfaces between the kernel and the user." Credit - rmano

7
  • OK, I've been using terminal. Wanted to see what the "fuss" was about regarding BASH. So my question stand however, why can I see it as an installed product, but not actually access it?
    – mike65535
    Sep 22, 2015 at 20:55
  • @mike65535 edit to my answer - the terminal is BASH
    – TellMeWhy
    Sep 22, 2015 at 20:57
  • 5
    -1 Bash is called Bash in Ubuntu. That you need a terminal to run Bash in is a different matter.
    – muru
    Sep 22, 2015 at 21:02
  • 3
    The bash isn't the Linux command line, it's a shell and there are many other shells available. And a terminal isn't a shell.
    – A.B.
    Sep 22, 2015 at 21:10
  • 2
    Now, your answer is pretty much a comment with a link to Rmano's answer.
    – muru
    Sep 22, 2015 at 21:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .