Skip to content

A thorough tutorial on using and programming with the Unix shell.

Notifications You must be signed in to change notification settings

pmetzger/ShellTutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

An Introduction to the UNIX Shell

What is this?

This is a tutorial introduction to the Unix shell, suitable for people who want to know how to use it effectively and how to write sophisticated shell scripts.

Sources and PDF

This document is written in troff, using the ms macros plus some extras included with it. A Makefile is included that will build the document on most Unix systems.

The sources are maintained using the git distributed revision control system. The latest version of the repository may be found at: https://github.com/pmetzger/ShellTutorial

A PDF version of the document should also be available for download from: https://github.com/pmetzger/ShellTutorial/releases

History

The tutorial was originally written by the creator of the modern shell, S. R. Bourne, as part of the documentation for the Version 7 Unix shell, aka the "Bourne Shell". It was included as part of the Version 7 Unix sources.

The document was lightly updated by Mark Seiden for the 4.3BSD Unix release, but otherwise remained dormant for some decades. However, the text became open source when Caldera released the Version 7 Unix sources under a modified BSD license.

In 2010 I (Perry Metzger) was teaching an Intro to Unix class and needed a good tutorial on the shell. I believed Bourne's original introduction was still the best and most thorough one that was freely available, but it was by then substantially out of date on many details that would be important to beginners. I therefore substantially modernized it and used it successfully for my class.

I'm releasing it here so that it may be of wider benefit to people learning about the shell.

License

The original document is under a modified BSD license. My modifications are under the similar but simpler ISC license.

For practical purposes, you can feel free to do more or less whatever you want with the document, including giving copies to all your students and making improvements or modifications to it, so long as you leave the copyright statement intact.

Feedback

I'm actively interested in comments, suggestions and improvements to this document. Please let me know, either with a bug report on Github or by email. (My address is "perry" at the domain "piermont.com")

About

A thorough tutorial on using and programming with the Unix shell.

Resources

Stars

Watchers

Forks

Packages

No packages published