Unix for Mac OS X Users

with Kevin Skoglund
please wait ...
Unix for Mac OS X Users
Video duration: 0s 6h 35m Beginner


Unix for Mac OS X Users unlocks the powerful capabilities of Unix that underlie Mac OS X, teaching how to use command-line syntax to perform common tasks such as file management, data entry, and text manipulation. The course teaches Unix from the ground up, starting with the basics of the command line and graduating to powerful, advanced tools like grep, sed, and xargs. The course shows how to enter commands in Terminal to create, move, copy, and delete files and folders; change file ownership and permissions; view and stop command and application processes; find and edit data within files; and use command-line shortcuts to speed up workflow. Exercise files accompany the course.

Topics include:
  • Moving around the file system
  • Creating and reading files
  • Copying, moving, renaming, and deleting files and directories
  • Creating hard links and symbolic links
  • Understanding user identity, file ownership, and sudo
  • Setting file permissions with alpha and octal notation
  • Changing the PATH variable
  • Using the command history
  • Directing input and output
  • Configuring the Unix working environment
  • Searching and replacing using grep and regular expressions
  • Manipulating text with tr, sed, and cut
  • Integrating with the Finder, Spotlight, and AppleScript
Mac OS X Unix


Welcome to Unix for Mac OS X users. My name is Kevin Skoglund and as a web developer I probably spend as much time working in Unix as I do writing code. In this course we are going to learn to use the powerful Unix operating system that's built into Mac OS X. I'll walk you through the fundamental concepts used in Unix, we will discover the Unix file system and learn to create, find, copy and delete files and directories all from the command line, and we'll see how user accounts function in a multi-user environment, and learn how to manage file ownership and user permissions. We will also cover dozens of useful Unix commands, everything from simple calculators to tools that monitor and manage every process running on your computer.

I'll introduce you to some power user techniques that will allow you to find, alter, or capture almost any text or system information. Now most of what we cover will be useful in any Unix environment, whether it's Mac, Linux, or something else. But in the final chapter I'll demonstrate many useful Mac only commands and techniques that can speed up your workflow and give you more power and control over your Mac. It doesn't matter if you're a complete beginner or have some prior experience. We are going to cover all the fundamentals you need to become comfortable working from the Unix command line. So let's get started learning Unix.

Find answers to the most frequently asked questions about Unix for Mac OS X Users .

Expand all | Collapse all
please wait ...
Q: The exercise files for the following movies appear to be broken:

Is there something wrong with them?
These exercises include one or more "dot files", whose file names start with a period. These files are normally hidden from view by the Finder.  So that they would show up in the Finder, the period has been removed from the file names. Additionally, "_example" has been added at the end of the file name to make it clear that the file will not work as-is. To make the dot files usable, either:

1) Open the file in a text editor to view its contents. Note that it may not be possible to double-click the file to open it because there is no file extension (such as .txt).
2) Resave the file under a new name (usually by choosing File > Save As), adding a "." to the beginning of the file name and removing "_example" from the end.


1) Copy and rename the file from the Unix command line using the techniques discussed in this course. Rename the file by adding a "." to the start and removing "_example" from the end. Include the "-i" option to prevent overwriting an existing file unexpectedly.
Example:  cp -i ~/Desktop/Exercise\ Files/Chapter_07/07_02_files/bashrc_example ~/.bashrc
please wait ...