Practical Unix

Welcome to CS1U! First and foremost, we want to stress that your priority this quarter should be your health and well-being. We hope that the format of this class is flexible enough to inspire as little stress as possible. However, if you find that you are not able to complete the assignments by the due date, are unable to attend office hours, or have other problems that impede your progress, please email Sofia and Erin at [email protected]. We will work with each and every one of you to ensure success in this class and minimize anxieties associated with this class. 

For more information on office hours and course logistics, navigate to the course logistics tab.


Practical Unix is a practical introduction to using the Unix set of operating systems with a focus on Linux command line skills.

The course has videos to introduce some commands and how to use them generally and lab exercises to solidify understanding and go beyond the material in the videos. Much of dealing with the command line involves knowing how to best use Google and manual pages to figure things out, so these lab exercises won't tell you how to do everything.

Topics include: grep and regular expressions, shells and ZSH, Vim and Emacs, basic and advanced GDB features, permissions, working with the file system, revision control, Unix utilities, environment customization, and using Python for shell scripts. Topics may be added over time.

If you have questions about the Stanford course, please see or email Sofia ( and Erin (

If you are NOT a Stanford student and have questions, email Sam.