This Linux Shell Scripting Tutorial is designed for people who wish to learn the fundamentals of shell scripting/programming. It also contains an introduction to power tools such as awk and sed. It is not the manual for the shell. While reading this tutorial you may find the manual quite useful (type man bash at $ prompt to see the manual pages). The manual contains all of the necessary information you need, but will not contain any examples which would make the ideas clear. Therefore, this tutorial contains examples rather than all of the features of the shell.
Audience for this tutorial
I assume you have a working knowledge of Linux: That you know basic commands such as how to create, copy, and remove files and directories; That you know how to use a text editor like vi or emacs; And that you can login to your system. However, I do not expect you to have any programming language experience. If you have access to Linux or (any UNIX like operating system), this tutorial will provide you with an easy-to-follow introduction to shell scripting.
So what is different about this tutorial?
Most of the other tutorials on Linux shell scripting are either too basic or skip too many important intermediate steps. The concept of this tutorial is to maintain a balance between these two. It covers many of the real life examples of shell scripting that are missing from many other tutorials. I have used a hands-on approach in this tutorial. The idea is very clear "do it yourself or learn by doing" i.e. trying things yourself is the best way to learn, so examples are presented as complete working shell scripts, which can be typed in and executed.
I hope you get as much pleasure from reading this tutorial as I had writing it. If, after reading this tutorial you are able to write your own powerful shell scripts, then I think the purpose of writing this tutorial has been served. Finally, if after reading this tutorial you do get time to drop me an e-mail message with your comments or suggestions I would greatly appreciate it.