Donation?

Harley Hahn
Home Page

Send a Message
to Harley


A Personal Note
from Harley Hahn

Unix Book
Home Page

List of Chapters

Table of Contents

List of Figures

Chapters...
   1   2   3
   4   5   6
   7   8   9
  10  11  12
  13  14  15
  16  17  18
  19  20  21
  22  23  24
  25  26

Glossary

Appendixes...
  A  B  C
  D  E  F
  G  H

Command
Summary...

• Alphabetical
• By category

Unix-Linux
Timeline

Internet
Resources

Errors and
Corrections

Endorsements


INSTRUCTOR
AND STUDENT
MATERIAL...

Home Page
& Overview

Exercises
& Answers

The Unix Model
Curriculum &
Course Outlines

PowerPoint Files
for Teachers

List of Figures

Quick jump:   2-1     2-2     2-3     2-4     2-5  
  3-1     3-2     3-3     3-4     3-5     3-6     3-7  
  4-1     4-2     4-3     4-4  
  5-1     5-2     5-3     5-4  
  6-1     6-2     6-3     6-4     6-5     6-6     6-7     6-8  
  7-1     7-2     7-3     7-4  
  8-1     8-2     8-3  
  9-1     9-2     9-3     9-4     9-5     9-6     9-7     9-8     9-9  
11-1   11-2  
12-1   12-2   12-3   12-4  
13-1   13-2   13-3   13-4   13-5   13-6   13-7   13-8   13-9  
14-1   14-2   14-3   14-4   14-5   14-6  
15-1   15-2  
16-1   16-2  
17-1  
19-1   19-2   19-3   19-4  
20-1   20-2   20-3   20-4   20-5  
21-1   21-2   21-3   21-4   21-5   21-6   21-7   21-8   21-9  
22-1   22-2   22-3   22-4   22-5   22-6   22-7   22-8   22-9   22-10   22-11   22-12   22-13   22-14  
23-1   23-2   23-3   23-4   23-5   23-6   23-7   23-8   23-9   23-10  
24-1   24-2   24-3   24-4   24-5   24-6   24-7   24-8   24-9  
25-1   25-2   25-3   25-4   25-5   25-6  
26-1   26-2   26-3   26-4   26-5   26-6   26-7   26-8   26-9   26-10  
  F-1     F-2  
  G-1     G-2     G-3  
Chapter 1: Introduction to Unix
— none —  
Chapter 2: What Is Unix? What is Linux?
Figure 2-1: The Most important types of commercial Unix
Figure 2-2: Linus Torvalds
Figure 2-3: The most important Linux distributions
Figure 2-4: The most important BSD distributions
Figure 2-5: The most important Linux live CDs
Chapter 3: The Unix Connection
Figure 3-1: Ken Thompson, Dennis Ritchie, and the PDP-11
Figure 3-2: Teletype ASR33
Figure 3-3: Closeup of a Teletype 33ASR
Figure 3-4: Terminals in a terminal room
Figure 3-5: Terminals connected to a terminal server
Figure 3-6: Unix/Linux computer on a local area network
Figure 3-7: VT100 terminal
Chapter 4: Starting to Use Unix
Figure 4-1: Keyboard of the Teletype ASR33
Figure 4-2: Login messages
Figure 4-3: Sample Unix Work Session
Figure 4-4: Output of the who command
Chapter 5: GUIs: Graphical Users Interfaces
Figure 5-1: Layers of Abstraction
Figure 5-2: Matthias Ettrich, founder of the KDE project
Figure 5-3: KDE desktop environment
Figure 5-4: Gnome desktop environment
Chapter 6: The Unix Work Environment
Figure 6-1: Typical Linux runlevels
Figure 6-2: Windows XP Pro: Startup options
Figure 6-3: KDE window operation menu
Figure 6-4: Gnome window operation menu
Figure 6-5: Window controls
Figure 6-6: Window controls showing the Unmaximize Button
Figure 6-7: Multiple terminal windows
Figure 6-8: Multiple terminals for one user
Chapter 7: Using the Keyboard With Unix
Figure 7-1: Keyboard of the Teletype ASR33
Figure 7-2: Keyboard signals to use while typing
Figure 7-3: Magnetic core memory
Figure 7-4: Summary of important keyboard signals
Chapter 8: Programs to Use Right Away
Figure 8-1: bc: Basic operations
Figure 8-2: bc: Mathematical functions
Figure 8-3: dc: The most important commands
Chapter 9: Documentation: The Unix Manual and Info
Figure 9-1: Reading a man page: Important commands
Figure 9-2: Displaying a man page in a terminal window
Figure 9-3: xman program
Figure 9-4: Eight sections of the online Unix manual
Figure 9-5: Standard headings used in a man page
Figure 9-6: Sample Page from the Unix manual
Figure 9-7: Example of a tree
Figure 9-8: Info: Important commands
Figure 9-9: The Info tree
Chapter 10: Command Syntax
— none —  
Chapter 11: The Shell
Figure 11-1: The Unix shells
Figure 11-2: The relative complexity of various shells
Chapter 12: Using the Shell: Variables and Options
Figure 12-1: C-Shell family: Connected shell/environment variables
Figure 12-2: The most important environment variables
Figure 12-3: C-Shell family: The most important shell variables
Figure 12-4: Bourne Shell Family: Summary of options for interactive shells
Chapter 13: Using the Shell: Commands and Customization
Figure 13-1: Non-alphanumeric characters used with Unix
Figure 13-2: Metacharacters used with the shell
Figure 13-3: Number of builtin commands for various shells
Figure 13-4: Standard shell prompts
Figure 13-5: Environment variables that are useful within a shell prompt
Figure 13-6: Special codes, commands, and variables to use shell prompts
Figure 13-7: Displaying the history list event number in your shell prompt
Figure 13-8: Autocomplete keys
Figure 13-9: Types of autocompletion
Chapter 14: Using the Shell: Initialization Files
Figure 14-1: Names of the initialization and logout files
Figure 14-2: Pronouncing the names of rc files
Figure 14-3: Bourne Shell family: Sample login file
Figure 14-4: Bourne Shell family: Sample environment file
Figure 14-5: C-Shell family: Sample environment file
Figure 14-6: C-Shell family: Sample login file
Chapter 15: Standard I/O, Redirection and Pipes
Figure 15-1: Bourne Shell family: Redirection of standard I/O
Figure 15-2: C-Shell family: Redirection of standard I/O
Chapter 16: Filters: Introduction and Basic Operations
Figure 16-1: The Most Useful Unix Filters
Figure 16-2: The Many Uses of the cat Program
Chapter 17: Filters: Comparing and Extracting
Figure 17-1: Programs to compare, sort, and select data from files
Chapter 18: Filters: Counting and Formatting
— none —  
Chapter 19: Filters: Selecting, Sorting, Combining, and Changing
Figure 19-1: Displaying the ASCII code
Figure 19-2: The order of characters in the ASCII code
Figure 19-3: Collating sequences for the C and en_US locales
Figure 19-4: Codes used by the tr program to represent control characters
Chapter 20: Regular Expressions
Figure 20-1: Regular expressions: Basic matching
Figure 20-2: Regular expressions: Repetition operators
Figure 20-3: Regular expressions: Predefined character classes
Figure 20-4: Extended and basic regular expressions
Figure 20-5: Displaying the ASCII code
Chapter 21: Displaying Files
Figure 21-1: Programs to display files
Figure 21-2: less: Summary of the Most Useful Commands
Figure 21-3: less: Commands to Use With Multiple Files
Figure 21-4: more: Useful Commands
Figure 21-5: Decimal, Binary, Octal and Hexadecimal Equivalents
Figure 21-6: Octal and Binary Equivalents
Figure 21-7: Hexadecimal and Binary Equivalents
Figure 21-8: Conventions for Indicating Hexadecimal, Octal and Binary Numbers
Figure 21-9: Sample binary data displayed as hexadecimal and ASCII
Chapter 22: The vi Text Editor
Figure 22-1: Bill Joy and Dennis Ritchie
Figure 22-2: The Lear Siegler ADM-3A terminal
Figure 22-3: The Teletype ASR33 Terminal
Figure 22-4: Vim Startup Screen
Figure 22-5: Keyboard layout of the ADM-3A terminal
Figure 22-6: How vi Displays Empty Lines
Figure 22-7: Keys to Use to Make Corrections While Using vi
Figure 22-8: The H, J, K and L keys on the ADM-3A terminal
Figure 22-9: Using regular expressions when searching with vi
Figure 22-10: vi Options: Switches and Variables
Figure 22-11: Characters to use as vi and Vim macro names
Figure 22-12: vi/Vim sample initialization file
Figure 22-13: Vim: Enhancements over standard vi
Figure 22-14: Bill Joy and Roseanne Roseannadanna
Chapter 23: The Unix Filesystem
Figure 23-1: An example of organizing with directories
Figure 23-2: The most interesting special files
Figure 23-3: The most interesting Linux proc files
Figure 23-4: The standard Linux filesystem
Figure 23-5: The original Unix filesystem
Figure 23-6: Contents of the root directory
Figure 23-7: Contents of the /usr directory
Figure 23-8: Directories that hold program files
Figure 23-9: A typical home directory-based tree structure
Figure 23-10: The most common filesystems
Chapter 24: Working With Directories
Figure 24-1: A sample directory tree
Figure 24-2: Making a sample directory tree
Figure 24-3: Directory stack commands
Figure 24-4: Flags displayed by the ls -F command
Figure 24-5: Summary of wildcards used to specify filenames
Figure 24-6: Wildcards: Predefined character classes
Figure 24-7: Dotfiles used by the shells and by vi/Vim
Figure 24-8: File type indicators used by ls -l
Figure 24-9: An example of a file manager
Chapter 25: Working With Files
Figure 25-1: Characters that are safe to use in filenames
Figure 25-2: Summary of file permissions
Figure 25-3: Numeric values for file permission combinations
Figure 25-4: Contents of an inode (index node)
Figure 25-5: The find program: Tests
Figure 25-6: The find program: Actions
Chapter 26: Processes and Job Control
Figure 26-1: Commonly used system calls
Figure 26-2: Job control: Tools
Figure 26-3: Job control: Specifying a job
Figure 26-4: The ps program: UNIX options
Figure 26-5: The ps program: BSD options
Figure 26-6: The ps program: Column headings
Figure 26-7: The ps program: Process state codes
Figure 26-8: The top program
Figure 26-9: Signals
Figure 26-10: Daemons
Appendix E: What to Do If You Forget the Root Password
— none —  
Appendix F: Time Zones and 24-Hour Time
Figure F-1: U.S. time zones
Figure F-2: European and Indian time zones
Appendix G: Shell Options and Shell Variables
Figure G-1: Bourne Shell family: Shell options
Figure G-2: C-Shell family: Shell options
Figure G-3: C-Shell family: Shell variables

Jump to top of page