A UNIX Shell is in simplest terms, a command line interpreter, that takes the users input and gives it to the Kernel. If you are familiar with DOS, you will remember the 'command.com' that file takes the users information and passes it to the operating system in a way it can be understood by the system. With DOS you only had one type of shell, but with UNIX you have a variety, each with their own abilities, pluses and minuses.
Keep in mind as you read about these shells, that though they may have major differences when they were created, that they have been updated and many features that were once only available in a single shell, may be available in other shells. This is more of a history lesson.
'sh'
The Bourne shell, named after its creator Steve Bourne is the oldest shell for most major distributions of UNIX and LINUX. Most shells today are in some fashion derived from the Bourne shell.
'csh'
The C Shell. The C shell is a great shell that has many advantages over the original Bourne shell, it was the first to introduce a history (the ability to scroll up, to view past commands). Also the C Shell as the name implies also integrates a great portion of the C programming language. If you are able to program in C, you can pretty much do it all in a shell script or from the command line, if you so desired.
'ksh'
The Korn Shell. Named after its creator David Korn. This shell is able to do most of the things both the Bourne, and C Shell can do, and improves on them. For instance, the history feature is available, plus you are able to call up the history, edit the command, and then re-run it.
'bash'
The Bourne-Again Shell. This is probably the most widely used shell to date, and is the default shell for most newer Linux distributions. Again it integrates most of the above features and improves upon them. It was developed by the Free Software Foundation.
There are many other shells out there, but chances are if you are using a UNIX style operating system, you are using one of the above mentioned shells. My personal favourite is the bash shell, which also happens to be the first one I was exposed towards, so I may be biased. However typically when shell scripting, I use the korn shell because of its programming friendly structure.
How do you know what UNIX shell I am using?
Type "ps" and then hit return at your shell prompt and you should get something similar to:
$ ps
PID TTY TIME CMD
13087 pts/1 00:00:00 bash
13121 pts/1 00:00:00 ps
The numbers under PID, TTY, TIME etc should all be different from machine to machine, and the number of lines of programs running may also. But one line you have will be probably "bash" "csh" "sh" "ksh".
Another way to check is to type the following:
grep your-user-name /etc/passwd (eg grep ken /etc/passwd)
Which will return you something along the lines of:
ken:x:501:501:Ken:/home/ken:/bin/bash
The last portion of that line is '/bin/bash' which tells you your default shell when you login.
Ken Dennis
ken.dennis@gmail.com
ken.dennis@gmail.com
Adobe Photoshop is one of the world's leading graphics editing... Read More
Microsoft Great Plains is main Microsoft Business Solutions product, targeted... Read More
Looks like Microsoft Great Plains becomes more and more popular,... Read More
The vast majority of us will have, at some point,... Read More
Did you ever give a thought to the number of... Read More
While Ukraine is becoming a new popular IT outsourcing destination,... Read More
Microsoft Business Solutions Great Plains and MS CRM (client relation... Read More
Microsoft Business Solutions products: Great Plains, MS CRM, Navision, Axapta,... Read More
This article is the fourth of a series of articles... Read More
Usually, the easiest way to tell you have spyware is... Read More
With any good luck and a good amount of hard... Read More
Microsoft Great Plains is now standard mid-market ERP application, serving... Read More
If someone entered your home, uninvited and installed numerous cameras... Read More
Introduction To ISDN, Part III: Configuring PPP PAP AuthenticationNow we... Read More
It's no secret that software companies operate in a very... Read More
What is Software?Software is a set of instruction written to... Read More
IBM Lotus Notes with Domino email server is traditional document... Read More
Background: For many organizations like ours, the interim target of... Read More
It is a well known fact that Java as a... Read More
Microsoft Business Solutions Great Plains version 8.5, 8.0, 7.5, Great... Read More
We were recently faced with a decision: either to let... Read More
Microsoft Great Plains is one of three Microsoft Business Solutions... Read More
When making a decision to buy any piece of software... Read More
Three highly respected names in Human Resources have joined forces... Read More
Microsoft Great Plains fits to majority of industries, in the... Read More
Alto Pass cool limo ..With thousands of web pages added to the Net every... Read More
... Read More
Buying accounting software is a major investment. It's an important... Read More
The Windows registry is a huge database that ensures normal... Read More
Learning how to program software seems like a daunting task... Read More
Now there are Three Steps To Heaven Just listen and... Read More
How many steps does it take you to locate and... Read More
If you are software developer or database administrator - we... Read More
Microsoft Business Solutions Great Plains, former Great Plains Software Dynamics/eEnterprise... Read More
Microsoft Great Plains, former Great Plains Software Dynamics / eEnterprise... Read More
In this small article we will show you the possible... Read More
XML Server can be a Web Server that stores the... Read More
ERP is the acronym of Enterprise Resource Planning. Multi-module ERP... Read More
How do you run a program on a remote server... Read More
The objective for Zandi Digital is to make available clever... Read More
GroupwareEfforts are continually made to manage the unavoidable ad hoc... Read More
Currently Microsoft Business Solutions is on the way of creating... Read More
1. With mapping software you can create a report that... Read More
MS CRM is very close to document workflow automation, including... Read More
In the previous ISDN article, we looked at how and... Read More
1. What determines the software price? Is it Per Seat... Read More
Hey Guys! Don't raise your eyebrows or fear by hearing... Read More
There is many things more frustrating than surfing a website... Read More
This article is for advanced Microsoft CRM SDK C# developers.... Read More
Words we choose to describe things and phenomena often show... Read More
Software |