Scroll to top

What is shell in linux operating system

We know that computers only understand two thing 0 and 1(Binary Language). So if you want your computer to do anything, you have to say it in the form of 0 and 1 only. No English No Hindi nothing else.

So what can we do now. We can only speak English (Hindi for me). How can i ask my computer to do something on behalf of me. Here comes Shell in the picture. It accept the command from me (User) in form of English, Interpret it and if everything is fine then it ask Kernel to perform activity. So this is the flow.

Me (English Speaking) >> Shell (Interprets Input from me)  >> Kernel (Perform Activity e.g. Print Doc etc)

Type of Shell

There are different type of Shell’s available, they all offer similar functionality but with different syntax.

All shells can be divided in two types

  • SH – Bourne Shell
  • BASH – Bourne Again Shell
  • CSH  – C Shell
  • TCSH – TENEX/TOPS C shell
  • ksh – Korn Shell
  • POSIX Shell

Difference between Shells

This is just the summary of this articles. If you want to have more understanding about Shell, you can look at this page.

Original Shell : Bourne Shell : SH (/bin/sh)

Pros : Very Strong powerful syntactical language

Cons : Not available to Interactive User

Second Shell : C-Shell (/bin/csh)

Pros : Available to Interactive User

Cons : Not as powerful as Bourne Shell, Buggy code

Third Shell : TCSH – TENEX/TOPS C shell : Built over C Shell

Pros : Most bugs of C-Shell is removed.

Cons : Not used much as most vendors stay away with this Shell.

Fourth Shell : KSH – Korn Shell (/bin/ksh)

Pros : Best of both world (Bourne Shell and C Shell), Can be used for Interactive and Non Interactive User

Cons : Paid Shell

Fifth Shell : POSIX Shell

Pros : Standardization of Unix followed, Posix compatible

Cons : Later on mapped to other shells

Most Famous : BASH (Bourne again Shell) Shell

Pros : Based on Bourne Shell, POSIX compatible, Best of Both worlds(SH and CSH), FREE

So currently BASH shell is the mostly used shell in Unix system. Hope you get the difference between all Shell.


Author avatar

1 comment

  1. satya

    Thanks a lot,
    Really its very usefull. You made me understand. Nice example u gave.

Post a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.