Surfalytics
CLI course overview

Just Enough CLI · Step 2 Free

Set up your terminal (WSL, zsh, Oh My Zsh)

Before practicing commands, set up a good environment. Ten minutes here pays off for years.

Windows: install WSL

Windows Subsystem for Linux (WSL) runs a real Linux environment inside Windows — no virtual machine, no dual boot. This is the standard setup for data work on Windows.

  1. Open CMD as Administrator.
  2. Run:
wsl --install
  1. Restart, then open Ubuntu from the Start menu.

Full guide: learn.microsoft.com/en-us/windows/wsl/install

Optional — make Ubuntu use zsh like a Mac:

sudo apt-get install zsh
sudo apt-get install git
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Then make bash hand over to zsh — add this to ~/.bashrc (edit with nano ~/.bashrc):

if test -t 1; then
exec zsh
fi

Mac: install Oh My Zsh

Your Mac already runs zsh. Oh My Zsh adds themes, plugins, and quality-of-life features on top:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

(To remove it later: uninstall_oh_my_zsh.) Themes and plugins live at github.com/ohmyzsh/ohmyzsh.

Two plugins worth installing

Autosuggestions — suggests commands from your history as you type:

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Syntax highlighting — colors valid commands green, typos red:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

Then open your zsh config (nano ~/.zshrc) and add both to the plugins list:

plugins=(
  git
  zsh-autosuggestions
  zsh-syntax-highlighting
)

Restart the terminal (or run source ~/.zshrc).

Practice in your terminal:

  1. Windows: install WSL and open Ubuntu. Mac: install Oh My Zsh.
  2. Install the two plugins and add them to ~/.zshrc.
  3. Start typing a command you used before — the gray autosuggestion should appear. Press the right arrow to accept it.