Skip Navigation LinksHome : CBC Classes : UNIX

CS223 UNIX

In this class you will learn about UNIX/Linux. You will learn what they are, and then spend most of the class learning how to use the command line interface. That is, you will learn a whole bunch of UNIX commands, but you will have to type them. This is to prepare you to administer UNIX/Linux computers. As a user, you can use the GUI interface, which means you can point and click, drag and drop, etc. But as an administrator you will need to be able to harness the power of the command line.

An excellent long term goal is to be able to write your own commands to accomplish the tasks you have as a system admin. But the UNIX command line is complicated enough that a good intermediate goal is to be able to understand commands that others have already written. So that's the way this class is designed. I think you will be successful if you can take something like:

and understand what it does, then modify it to meet your needs. (Yes, even though it looks like the cat walked across the keyboard, this command really does something.)

You will also start to learn about some of the internals of the UNIX/Linux OS that will help you perform your own installs, and make sure your systems are secure. You will learn about the different UNIX/Linux disk partitions and the file system, which are necessary if you are planning on going into Cyber Security.


  1. Class Introduction
  2. Operating System Basics and Introduction to UNIX/Linux
  3. Looking around
    1. File system
    2. Applications and Games
    3. Users
    4. Programs and Processes
  4. Files and Directories
  5. The command line
    1. The cat walked on the keyboard
    2. Single commands
    3. Wildcards for commands that take filename arguments
    4. Protecting characters with quotes and slashes
      1. Filename wildcards, shell variables, tabs and newlines
      2. Slashes
      3. Single quotes and double quotes
      4. Backticks
    5. Multiple commands with semi colon
    6. Line continuation
    7. Stdin, stdout and stderr
    8. Redirection and appending
    9. Basic piping
    10. Grouping w parentheses
    11. Pipeline and stream processing commands
      1. Intro to grep, sed and tr
      2. Cut, paste and join
      3. Regular expressions
        1. basic anatomy
        2. Different from filename wildcards, when to use regular expressions
        3. text characters
        4. wildcards for single characters
        5. occurence modifiers
        6. positional modifiers
        7. shortcuts
        8. don't reinvent the wheel