You should read through this to become familiar with some concepts, as I believe it’s important to learn the why’s before the how’s.
Firstly, the concept of the Terminal. There are many names for this - the “command line”, the “terminal”, “shell”, and so on - and I will use them interchangably. Inexperience running commands on your PC results in a fear of the unknown, and so I believe anyone wanting to use a UNIX based system should learn some basic terminal commands. The concept of having a terminal is not a Linux or UNIX specific thing; Windows has kept Command Prompt as a standard installation on all of their systems and still ships Windows 11 with a lot of features that were available back in Windows XP, such as “net”. Since Satya Nadella took charge of Microsoft, and WSL started getting baked into Windows even further, the lines between Bash and Powershell have started to fade with basic commands such as “cat” being coopted and concepts like piping becoming less jarring for Linux-turned-Windows users.
It’s difficult to proceed without explaining that Linux is a file-based system, where-as Windows is a registry-based system. The difference here lies that if you want to configure anything on Linux, you just change a file and restart a service. Juxtaposing this with Windows, to perform the same confirguation edit, you would need to adjust both a file and a registry entry and then restart a service.
The versatility of Linux gives us flexibility with setting up our learning environments. Once upon a time, it was pragmatic to dual boot or run a separate machine however Linux can run with 1 CPU core and less than 512MB RAM (depending on your flavor, which we’ll talk about in Part 2). Luckily, we don’t have to worry about any of that these days, and we have a few options available.
For Windows users, Windows Subsystem for Linux makes your life super simple. Simple open CMD as an Administrator and run “wsl –install”; this will install WSL on your system for testing out some distributions. Once that command has finished what it was doing, you can install your preferred flavor of Linux from the Windows Store.
For Mac users, you may be pleasently surprised to learn that Mac OS X is a UNIX-based operating system and thus Terminal uses a shell called “Z Shell” or “zsh”. A lot of what I do in this series can be done in your Macs built-in Terminal, as zsh is an extension of Bash.