
An Introduction to Shell Programming
What is a shell?
A shell, at least in computing terms, is one of the earliest ways to interface directly with a computer operating system. Shell predates GUI interfaces by decades, but is still in use today. As Shells have more direct access to the operating system they can quickly execute many commands. Depending on the system and the specific shell, these commands and what commands the shell may accomplish, differ greatly. Further, a system may be able to switch between different shells. Common Shells are C-Shell, Bash, T-Shell, etc.
What is Shell scripting?
Shell scripting exists between full programming and user commands. Shell scripts can automate many shell activities. For instance one shell command might give a list of files in a directory; a shell script could execute this command numerous times and do more complicated things with the results. Shell languages are typically interpreted rather than compiled (when the script runs the computer generates the machine code rather than generating this once when the program is written)
Creating a Shell Script
- How to Create a Shell Script - A Very Basic overview of writing your first shell script.
- Your First Shell Script - Introduction to shell scripts.
- Writing Bourne Scripts - Introduction to bourne scripting.
- Korn Shell Scripts - Your first korn shell script.
- Scheduling Shell Scripts - Chron scheduling.
- Shell Command Tutorial - Basic shell commands.
Standard input, output, and error
- CGI input -IO in CGI
- Redirection - IO Redirection
- IO Abstraction - Abstracting IO implementations.
- Input & Output in Perl - Perl IO Guide
Language Constructs
- Python Language Constructs - Advances programming constructs within Python.
- Scripting Languages & Programming Constructs - Common programming language constructs in scripting languages.
- An Introduction to Perl Constructs An introduction to programming constructs in Perl.
- OSA Scripting - Implementing advanced programming commands by utilizing the Open Scripting Architecture.
- Basic Scripting - Basic scripting language contructs.
Tricks
- Sys V vs BSD - A Comparison of System V and BSD.
- The Test Command - Testing your scripts.
- RegEx in Shell Scripts - Regular Expressions in Shell Languages.
- Grep - Searching with GREP.
- Regular Expressions in GREP - Advanced Grep Commands.
- SED & AWK - Searching using SED and AWK.

