The Terminal and the Shell

1. The Terminal and the Shell#

A terminal gives you a direct way to work with a computer through commands. This chapter connects the Unix design philosophy to everyday navigation, the relationship between the shell and kernel, safe lab practice, and the organization of the Linux filesystem.

  • Unix philosophy: Small tools and consistent interfaces make commands useful together.

  • Terminal navigation: Paths and navigation commands let you find and inspect files.

  • Authorized practice: Cybersecurity commands belong in approved labs, VMs, containers, WSL instances, or course-provided hosts.

  • Kernel and shell: The shell interprets commands while the kernel manages system resources.

  • Filesystem hierarchy: A shared directory structure gives files and programs predictable locations.

Chapter Video

Linux in 100 Seconds (2:41) by Fireship

Hosted on YouTube; property of its original creator, embedded here for educational reference only.

Learning Objectives

By the end of this chapter, you will be able to:

  1. Explain how Unix’s design principles influence command-line tools.

  2. Navigate absolute and relative paths using pwd, cd, and ls.

  3. Create, inspect, and remove practice files and directories.

  4. Distinguish the responsibilities of the shell, kernel, and processes.

  5. Identify the purposes of common Linux system directories.

  6. Explain why cybersecurity practice must stay inside authorized lab environments.

Chapter Flow

Glossary

#

Term

Explanation

1

Unix

An operating-system family that influenced Linux and its tools.

2

Linux

The kernel used by Linux distributions.

3

Distribution

A packaged system combining Linux with programs and utilities.

4

Bash

A shell that interprets commands and runs scripts.

5

Terminal

An interface for entering commands and reading their output.

6

Shell

A program that interprets commands for the operating system.

7

Prompt

The text indicating that the shell is ready for a command.

8

Kernel

The core software managing hardware and system resources.

9

Process

A running instance of a program.

10

Filesystem

The organization used to store and locate files.

11

Root directory

The top of the Linux directory tree, written as /.

12

Home directory

A user’s personal directory, abbreviated as ~.

13

Working directory

The directory used as the starting point for relative paths.

14

Absolute path

A path beginning at the root directory.

15

Relative path

A path interpreted from the current working directory.

16

Parent directory

The directory one level above, written as ...

17

Hidden file

A Unix file whose name begins with a dot.

18

Command option

An argument that changes a command’s behavior.

19

File permission

A rule controlling access to a file or directory.

20

Filesystem Hierarchy Standard

A convention defining common Linux directory purposes.

21

Authorization

Permission to inspect, scan, audit, or modify a system.

22

Lab environment

An approved practice system such as a VM, container, WSL instance, or course-provided host.

Chapter Overview Slides