Skip to content

Fundamentals

This section covers the essential building blocks of working with the bash shell. Master these concepts and you'll have a solid foundation for everything that follows.

Topics

Shell Basics

Understanding what bash is, how it relates to terminals and shells, and the difference between interactive and non-interactive usage.

Moving around the filesystem with cd, understanding paths (absolute vs relative), and using the directory stack with pushd and popd.

Files & Directories

Essential file operations: creating, copying, moving, and removing files and directories. Includes ls, mkdir, rm, cp, mv, and touch.

Viewing Files

Reading file contents with cat, less, head, tail, and identifying file types with the file command.

Permissions

Unix permission model: users, groups, read/write/execute bits. Commands include chmod, chown, and umask.

Redirection & Pipes

Controlling input and output: stdin, stdout, stderr, redirecting to files, and connecting commands with pipes.

Learning Order

These topics build on each other. If you're new to the command line, work through them in order:

  1. Shell Basics - Understand what you're working with
  2. Navigation - Learn to move around
  3. Files & Directories - Work with the filesystem
  4. Viewing Files - Read what's in files
  5. Permissions - Control access
  6. Redirection - Connect commands together

Key Concepts

By the end of this section, you'll understand:

  • The relationship between terminals, shells, and bash
  • Absolute vs relative paths
  • The filesystem hierarchy
  • Standard Unix permissions (rwx)
  • stdin, stdout, and stderr
  • How to chain commands with pipes

Try It

Each page includes practical exercises. The best way to learn is by doing - open a terminal and follow along.