• About
  • Privacy Policy
  • Contact us
  • Submit a story
Linux-News Linux news from the Blogosphere
  • Article
  • Howto
  • News
  • Opinion
  • Review
  • RSS Feed
  • Twitter
  • Facebook

The Linux Command Line Shell Roundup

By
News
– November 7, 2011Posted in: Article, Review, Submitted

Author: Brett Johansen

The command line is a powerful way to interact with a Linux computer.  Instead of using the mouse, you just type commands into the shell.  (The shell is a blank window where you type in your commands.)  So for example, instead of clicking on your file browser, you simply type ls [enter] to display the contents of your working directory.

There are several different shells.  The original shell is sh, or the Bourne Shell.  It was developed by Stephen Bourne at Bell Laboratories.  It’s still in use today.  Check for it in your /bin directory.


The C Shell, or csh, created at the University of California, Berkeley, has a different command language than sh.  A lot of csh commands won’t work in an sh shell and vice versa.  And for some time, the only shell options were sh and csh.

The csh shell was created for Linux/Unix nerds who coded in the C programming language and wanted a shell that used a similar language.  So csh was born.  And so these two shells created a bit of a rift in Linux land.  Sort of like the Ford/Chevy debate.  Linux users love to argue about which tool is better.

Well, there are always options with Linux.  So it wasn’t long before other shells came about.

The tcsh shell is csh compatible, but has a bunch more nerdy features like auto-spelling correction, scheduling the time when you want to execute a command, and command line editing.  This all sounds great, but for some reason, tcsh didn’t catch on.

The korn shell, created by David Korn is sh compatible, but had a bunch of C shell features.  The korn shell is sort of the best of sh and tcsh in one package.  It is the default shell on some distros.

The bash shell (Bourne again shell) was created by the FSF (Free Software Foundation and the GNU Project).  Bash is fully sh compatible and has many csh features as well.  Bash comes default on many distros as well.

The Z shell, or zsh, developed by Paul Falstad has become quite popular, especially among Linux users.  It is similar to ksh and sh both in syntax and function, and it is partially compatible with csh.

So there it is, the shell roundup.  Currently, Ubuntu has bash as its default.  The main thing is to test them out and see which one you like, or is most compatible with your needs.


Article Source: http://www.articlesbase.com/operating-systems-articles/the-linux-command-line-shell-roundup-2713280.html

About the Author

Brett writes about computers, old school safety razor shaving and blue nitrile gloves!  Check out his site all about blue nitrile gloves, a great barrier against infection.  Black Nitrile Gloves are also available and used often by mechanics and tattoo artists.

Tags: bash, Bourne Shell, C Shell, command language, csh shell, default shell, free software foundation, GNU Project, Korn shell, linux, linux computer, linux users, shell options, tcsh shell

About News

5 Comments

  1. crinogros
    Posted November 7, 2011 at 6:08 PM

    Nice article on the Command Line shell.
    Another excellent article on the topic is Neal Stephenson’s
    _In the Beginning was the Command Line_

  2. David Dreggors
    Posted November 8, 2011 at 4:06 AM

    Nice little shell differences but it is worth noting some points of interest.

    1. C Shell is not only not used anymore, it is advised by many to run from it!
    See: http://www.grymoire.com/Unix/CshTop10.txt
    2. Bash Shell is more than just on a few distributions, it is default on most and on many BSD/Unix flavors as well.
    3. Ubuntu *DOES NOT* use bash as the default, it uses it’s own shell Dash and /bin/h is a symlink to Dash. This behavior can be changed of course but do not expect your command prompt to behave exactly the same as many other distros and shell scripts that require bash. Things like substring parameter expansions (${VAR:0:3}) may require bash and that will not work in dash.
    See: https://wiki.ubuntu.com/DashAsBinSh

  3. mcalex
    Posted November 8, 2011 at 5:46 AM

    http://en.wikipedia.org/wiki/Comparison_of_command_shells

  4. Krash Override
    Posted November 9, 2011 at 11:16 PM

    tcsh rocks! love it! as a ‘c’ programmer its perfect for writing small shell scripts without having to go into great lengths to accomplish what i want. too bad it’s not taught at the colleges.

  5. John Lauro
    Posted November 11, 2011 at 2:48 PM

    One thing you may want to do is bench mark the shells. For many things it doesn’t matter, but if you write a script that either does a lot of work or is called often it can make a big difference. That is one of the reasons I prefer ksh, it is significantly faster and more efficient compared to sh and bash (and probably others, but haven’t tested them).

Leave a Reply Cancel reply

Your email address will not be published.

  • Suggested Sites
    http://linuxaria.com everything about Linux http://linuxaria.com everything about Linux
  • Curated topic
  • Recent Posts
    • The Ultimate Hypothyroidism Diet Plan PDF: Your Guide to Thyroid Health
    • How to Ace Colonoscopy Prep: A Comprehensive PDF Guide
    • How to Effortlessly Turn a PDF into Word: The Ultimate Guide
    • Unlock Seamless Document Editing: How to Convert PDFs to Editable Word Documents
    • How to Resize PDF Files: A Comprehensive Guide for the PDF Niche
    • Unlock Credit Clarity: Your Guide to the Fair Credit Reporting Act PDF
    • Secure and Efficient PHI Release: A Comprehensive Guide to General Release of Information Forms in PDF
    • How to Write an Effective Conclusion PDF: A Comprehensive Guide
    • Far Aim 2023 PDF: Your Roadmap to a Successful Future
    • Access the Telugu Aditya Hrudayam as a PDF: A Guide to Divine Devotion
  • Ranking

About Arras WordPress Theme

All site content, except where otherwise noted, is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.