Module Title: dgt_bash03 – Job Control
Description:
The module “dgt_bash03 – Job Control” covers how jobs are managed within the Bash shell. It is suited both to beginners and to experienced users who want to understand how the shell controls processes through its job control features.
Throughout this module, you will study the essential job management commands such as bg (background) and fg (foreground), and the mechanisms behind them: process groups, signals, suspended and running jobs. These tools are what allow a terminal session to multitask and handle several jobs at once.
The practice follows the academy’s rule: after the theory, you work exclusively in natural language. Instead of pressing keys and typing job commands yourself, you ask the machine to start a long-running task, suspend it, send it to the background or bring it back, and you check from the job list and process states it reports that each step did exactly what you intended. Knowing how job control works is what lets you notice when it did not.
Key Module Objectives:
-
Understanding Job Control Basics: Learn the foundational concepts of job control in Bash, including what constitutes a job and how Bash handles it.
-
Executing Background Processes with
bg: Understand how thebgcommand moves processes to the background, so that you can instruct the machine to keep long-running commands going while other work continues, and verify that they really are running. -
Bringing Jobs to the Foreground with
fg: Understand how thefgcommand resumes suspended jobs and brings them back into focus, and recognise when the machine has used it correctly. -
Practical Examples and Scenarios: Work through real-world scenarios in which you describe to the machine how jobs should be juggled, then read the commands it chose and the resulting job states to confirm your understanding.
-
Advanced Job Control Techniques: Explore more sophisticated job management, including multiple concurrent jobs and complex workflows, giving the machine precise constraints and reviewing how it handles them.
-
Troubleshooting Common Issues: Learn to diagnose typical job control problems (stopped jobs, lost output, orphaned processes) in what the machine reports, and guide it towards the right fix.
Target Audience:
- System administrators who want a deeper understanding of process management in the shell.
- Developers who rely on Bash for scripting or automation tasks.
- IT professionals interested in using job control to organize their workflow.
- Anyone who wants to understand, and direct a machine to manage, processes within a Unix-like environment.
By the end of this module, you will understand how Bash manages and controls jobs, and you will be able to instruct a machine to handle them for you while verifying every step.
The students can push their exercises to the Academy DevOps & SRE Git project. For this module, create a folder with your username as its name in the following subfolder: https://github.com/Garanti-Del-Talento/gdt_academy
