A shell is command interpreter between user and Unix kernel as well as provides a strong scripting language in UNIX
Following are the different types of Unix shells:
B shell - /bin/sh – This is the default Unix shell for many Unix operating systems . Bourne shell was written by S. R. Bourne and its more emphasis is to use it as a scripting language rather than an interactive shell . Some of the features are : Provided support for environment variables using parameters and exportable variables. Redirection of program output and error . Command substitution using back quotes: `command`. embed a file/commands using input redirector << “for ~ do ~ done” loops “case ~ in ~ esac” for selecting and responding to a data value .
C-shell /bin/csh was designed to provide the interactive features lacking in b shell such as job control and aliasing .
K shell /bin/ksh – was created by David Korn and has features of both B shell and C shell along with some additional features .
Bash – the Bourne again shell was developed by GNU project .It is based on B shell language and has features of C and K shells.
tcsh is the default shell of FreeBSD and its descendants. Essentially it is C shell with programmable command line completion, command-line editing, and a few other features.
Zsh is a shell designed for interactive use and it has many of the useful features of bash, ksh, and tcsh along with many new features.
Unix Shell configuration files :
b shell —————————————————–
shell prompt : $ executable file : /bin/sh
Read on interactive/non interactive login to bash /etc/profile ~/.profile
bash shell —————————————————–
shell prompt : $ executable file : /bin/bash
Read on interactive/non interactive login to bash /etc/profile ~/.profile ~/.bash_profile ~/.bash_login
I'm Parthiban, An UNIX System Admin by Profession. I'm Experienced in Linux/Unix System Administration and Scripting. I have done lot of work on the infrastructure Mgmt side in Linux, UNIX and Windows system administration, Hardware, Storage and Data center. I'm blogging since 2008.
Follow Me On Twitter or On Facebook
Do you like my blog?
If you enjoy reading the LazySystemAdmin blog, please help spread the word by sharing this site with your friends.
LazySystemAdmin is a site with 300+ Articles, how-to guides and video tutorials on all things related to System Administration and Technology. This Blog is to share our knowledge and expertise on System Administration and Operating Systems. Stay connected with LazySystemAdmin.