Unix Basics Fast ⌨️

Hello and welcome to Unix Basics Fast: A crash course in the essential terminal commands you will need to be a programmer, IT, DevOps (developer operations), or DevEx (developer experience) engineer. This beginner-friendly course is designed for people learning programming (like React, Javascript, Ruby, or Python).

Not knowing how to work with a terminal can hold you back in your development as an engineer because you will get stuck on essential tasks like setting up and understanding your dev environment.

This course focuses on helping new software engineers get comfortable using a terminal, basic unix concepts, and commands and understanding and using package and version managers. By the time we’re done, you’ll have a solid understanding of the file system, how to set permissions, where to look for things, how to edit config files, and more.

GET THE FULL COURSE HERE

What is a terminal?

A terminal is a program you use to type commands into the computer. On most modern operating systems, you open a terminal using a terminal program.

The classic picture of a terminal is a black background with white text (and a white cursor) like this:

But your terminal window doesn’t necessarily have to be white-on-black (white text on a black background); it can be any color you set. I recommend you take extra time to set yourself up with a window that is comfortable to your eyes and pleasant to look at. After all, you will look at this screen most of the time you are programming. I like to use different colored terminal windows for different operations, but that’s just my preference.

On macOS operating systems, you can choose the built-in program called Terminal (it comes with your Mac), or several paid alternatives like iTerm, or any of the alternatives you find in the app store.

This course will cover using the Terminal program that comes with your Mac.

This is how you interact with the macOS Linux system. In this window, you type commands using the Unix shell prompt.

On Windows, there is another kind of terminal that looks similar, but note that this is the Powershell prompt. You get to the Powershell prompt by right-clicking on the desktop -> Open Terminal.

Right-click to see the context menu, then choose “Open in Terminal.”

Although it looks the same, this is not a Unix terminal. It is a Powershell prompt and accepts DOS commands, not Unix commands. Do not confuse the Powershell prompt with the Unix terminal. We’ll cover the WSL setup in Lesson 3.

To work with Linux on a Windows system, you’ll instead use WSL: Windows Subsystem for Linux. This system-within-a-system is provided by Microsoft. It is an Ubuntu-based version of Linux that runs inside your Windows system.

Once you have installed WSL and Ubunto (see lesson 3), you’ll open Ubuntu by searching for it from the search bar:

Windows 10
Windows 11

While you’re in Windows Subsystem for Linux, you are using a UNIX-based subsystem, and therefore, the terminal inside of WSL is a UNIX-based terminal.

All UNIX-based terminals work very similarly. However, there are some differences between certain commands on different shells, operating systems, and package managers. For the most part, that’s not something you need to worry about for this course, but keep in mind to always check your version numbers and packages and keep in mind subtle differences in Unix commands between different shells.

Start with Lesson 1: A Brief History of Linux

You’ll want to pick either Lesson 2 (Mac) or Lesson 3 (Windows), depending on whether you use Mac or Windows. Linux users can skip Lesson 2 and Lesson 3.

GET THE FULL COURSE HERE
GET THE FULL COURSE HERE