UNIX Tutorial

Kevin Heard
Computing & Information Services
UC Berkeley School of Information

Over the course of its history, UNIX has developed a reputation as a powerful yet difficult to use operating system. This is really quite inexplicable, given such intuitive sounding command names as chmod, grep, sed, and awk. Nevertheless, it is apparently true that many beginners find the UNIX command-line interface to be arcane and, at times, downright impenetrable. It is for such users that this tutorial is designed.


The tutorial is divided into several sections, each one presenting a particular topic. UNIX commands relevant to the topic are introduced, and exercises are given to illustrate the topic and teach the basic usage of the commands. We'll start by introducing the shell, the program through which you give commands to the UNIX operating system. Next, we'll move on to basic operations, such as logging in and managing files and folders. As we progress through the tutorial, we'll cover more advanced topics, including shell customization, input/output redirection, processes, and job control. After completing the tutorial, you should have a solid foundation to begin exploring UNIX on your own.

Typeface Conventions

Bold fixed-width

is used to show commands you type in. When instructed to "enter" a command (or other information), you should type the command or information as shown followed by pressing the ENTER key (called RETURN on some keyboards).


is used to show prompts for commands as well as the output of commands. The output shown in the tutorial exercises is meant to be representative of the output you will see when you enter commands. What you actually see will often differ from what is shown in the examples.

Bold italic

is used for the names of UNIX commands.


is used to highlight new terms and concepts when they are introduced.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.