| Topic |
Description |
| Chapter
1: Unix Shells |
What is a Unix Shell?
• Interactive vs. Interpreted
• Shell types (bash, sh, tcsh, etc.)
Obtaining a Unix Shell
• Terminal
• ssh
• X11
• Single-User mode
• >console
• Serial Port |
| Chapter 2: Shell Environment Part 1 |
Command Grammar and Syntax
• Command Line
• Error Feedback
• Output Redirect
• Piping
Input/Output
• STDIN
• STDOUT
• STDERR
• File Redirect vs. Piping
Processes and Users
• Daemons and Process Ownership
• Process ID
• Substituting User
Shortcuts and Special Characters
• Shell Shortcuts
• Terminal Applications Shortcuts
• Wildcard Characters
• Line Continuation Characters |
| Chapter 3: Filesystems, Permissions, and Monitoring |
Unix View of the Filesystem
• Filesystem Layout
• Absolute and Relative Paths
• Path Traversal Shortcuts
• Unix vs. the Mac OS X Finder
• Hidden/Invisible Folders and Files
• Aliases vs. Symbolic Links
Unix Permissions
• File and Folder Metadata
• Unix Permissions in Detail
• File Viewing Commands
• System Monitoring Commands |
| Chapter 4: Documentation, Searching, & Editing |
Documentation & Searching
• man Page Organization
• man Page Sections
• Searching for Commands you don't know the name of
• Command-Line Mac OS X Spotlight
Text Editing
• nano
• vi
• emacs |
| Chapter 5: Shell Environment Part 2 |
Process Control
• Foreground/Background processes
• Killing Processes
Environment Variables
• Key/Value
• Viewing in bash
• Assigning & Using in bash
• PATH, MANPATH
Environment Variables
• Startup files in bash
Input/Output Revisited
• Pipes in More Detail
• Command Output Substitution
• Troubleshooting |
| Chapter 6: Putting the CLI to Work on Mac OS X |
Mac OS X Underpinings
• Application Bundles & Packages
• Launch Services and open
• Software Installation Receipts
• Darwin & Mac OS X Specific Commands
Installing Open Source Software on Mac OS X
• MacPorts
• Fink
• Troubleshooting |
| Chapter 7: Introduction to Shell Scripting |
Script Format
• Shebang
• Comments
• White Space
• Line Continuation Characters
• Invoking Scripts
• Command-Line Arguments in bash
Flow Control in bash
• Testing an Expression
• IF-THEN-ELSE
• WHILE
• FOR
• Example scripts |