Terminal Tutorial

 
 

Terminal.app provides a window for display and a scroll buffer of the previous output. It is merely a container for other programs.


It runs that program and displays the output. It can run any program, we just get the most use of something called a shell.

 

Terminal.App

A shell is nothing more than our interface to the system. There are many different kinds of shells, each with their own features. It can be as simple or complex as the author wants to make it. Our default shell in Mac OS X is called Finder. You should be very familiar with this application.


Finder provides you with a robust interface to access your applications, manage your documents, and control the computer. Most of the time Finder is very friendly and intuitive. It has been designed with user experience as its primary goal.


Our default text-based shell on the other hand is called Bash. Text interfaces have been around as long as modern computing. Using a computer with nothing but a keyboard was the primary means of talking to a computer for much of the 70’s and 80’s. This means that when you open up Terminal.app you are delving into a system that has been in development for almost 30 years.


Absolutely everything that you have done with Finder, Mail, Safari, Calculator, Automator, Disk Utility, Network Utility, Software Update, Spotlight, TextEdit, and yes, even some of the iLife Apps can be done from the terminal. That can be a daunting concept, especially when you come to realize that all of these really useful and powerful utilities were not designed with usability in mind. In the text world, function comes before form.


Just to give you an idea here, one of the most confusing things I ran into the first couple of days using a terminal was the help system. The very thing that is suppose to help you out of a jam will be terribly confusing to you for quite some time.

The Shell

On the right hand side up above is a list of all the articles presented here. They are put in a somewhat natural order that should be followed in sequence. Each section will depend on information gained in the previous one. Once you have completed a section, jump around and cover other information you might have missed.

First Steps

The way things are going, in the not too distance future you could spend an entire day using a computer and not touch the keyboard. People just seem to prefer the ease of use that a mouse provides. However, the power of point-and-click pales in comparison to what can be accomplished with a little bit of work in a text-based interface.

Introduction