• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
The Shell Game Part 2: What are your shell choices?
 

The Shell Game Part 2: What are your shell choices?

on

  • 2,128 views

Continuing the exploration of the Linux Shell we look the various shell options you have.

Continuing the exploration of the Linux Shell we look the various shell options you have.

Statistics

Views

Total Views
2,128
Views on SlideShare
2,084
Embed Views
44

Actions

Likes
1
Downloads
27
Comments
0

3 Embeds 44

http://www.zwilnik.com 42
http://www.slideshare.net 1
url_unknown 1

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    The Shell Game Part 2: What are your shell choices? The Shell Game Part 2: What are your shell choices? Presentation Transcript

    • The Shell Game 2 Kevin O'Brien Washtenaw Linux Users Group http://www.lugwash.org
    • Varieties of Shell ● In Linux, you always have choices, whether you like it or not ☺ ● With shells you have choices ● The Bourne-Again Shell (bash) is most likely the default you have on your system now ● But you can use others as well
    • Why use different shells? ● Like any other choice, you would select different shells because they have special capabilities you want to make use of ● They may have special commands, or use less resources, or maybe you just feel more comfortable with one shell rather than another
    • Bourne shell (sh) ● The original Unix shell ● Written by Stephen Bourne at Bell Labs in 1974 ● A simple shell, with small size and few features ● Every Unix-like system either has sh, or has a shell that incorporates everything in sh
    • Bourne-Again Shell (bash) ● The default for all Linux systems ● Also runs on virtually all Unix-like systems, and there is even a version available for Windows ● Bash is a superset of sh, that is, it incorporates everything that is in sh, but then adds to it ● It is very flexible, and a good choice for beginners. The rest of this series will use bash to illustrate using a shell.
    • Almquist Shell (ash) ● Basically a clone of sh ● Very small memory requirements ● Thus it is useful for small embedded systems
    • C Shell (csh) ● Created by Bill Joy while he was at UC Berkeley ● Syntax very similar to the C programming language
    • Korn shell (ksh) ● Developed by David Korn at Bell Labs in 1983 ● Superset of SH, with many features of the C Shell as well ● Advanced scripting capabilities similar to what is in awk, sed, and perl
    • TENEX C Shell (tcsh) ● Based on C Shell ● Adds features not found in C Shell ● Now the default shell on some BSD systems (FreeBSD and Darwin)
    • Z Shell ● Written by Paul Falstad around 1990 ● Simlar to ksh, but has features from csh as well ● Attempt to use the programmability of the ksh with csh features
    • You can choose ● You can make a temporary switch of your shell ● Or you can change the default if you find one you like better
    • Temporary switch ● A shell is an executable file (everything in Linux is a file) ● So you just run it ● For example, to change to the original Bourne shell, just type “sh” at the prompt ● To go back to the Bourne-Again shell, just type “bash” at the prompt ● When you change, notice that the prompt itself looks different
    • Changing the default 1 ● Suppose you find a shell you like better, and you want that to be the shell you always want to see when you boot up your computer ● First, find out the full path of the shell, i.e., what is the full path, starting from the root, to the executable file that contains the shell ● To get clues, open up /etc/shells and etc/passwd ● For example, bash is usually /bin/bash
    • Changing the Default 2 ● Once you know the full path to the shell you now want to be the default, use the change shell command (chsh) ● This will open a brief dialog to make the change, and will ask you for your password to authorize it
    • Whose shell is this, anyway? ● One thing you need to remember is that the choice of shell is only being made for the person logged in ● You could have multiple users on a system, and have each one make their own shell choice ● Tip: always try out a shell temporarily before making a permanent change