Episode Details
Back to Episodes
Course 4 - Learning Linux Shell Scripting | Episode 9: Process Management, Scheduling, User Control, and Scripting Utilities
Published 6 months, 2 weeks ago
Description
In this lesson, you’ll learn about:
You can listen and download our episodes for free on more than 10 different platforms:
https://linktr.ee/cybercode_academy
- Process and signal management:
- Understanding Linux processes and gathering details using ps, top (for CPU-intensive tasks), and pgrep (to find PIDs).
- Analyzing process attributes such as PID, user, memory usage, and CPU time, and learning to filter and format outputs.
- Managing processes through signals — terminating with kill (default SIGTERM) or force-stopping using SIGKILL.
- Implementing custom signal handling in scripts using trap to gracefully manage interrupts like SIGINT (Ctrl+C).
- System monitoring and communication:
- Retrieving system details including hostname, kernel version, CPU, and memory stats.
- Exploring the /proc pseudo-filesystem to access live process data (environment variables, file descriptors, working directories).
- Sending system-wide messages to logged-in users using wall, or directly writing to a specific user’s terminal under /dev/pts.
- Scheduling and database interaction:
- Automating tasks with cron — writing crontab entries (minute, hour, day, month, weekday, command) and setting environment variables.
- Configuring startup/boot-time commands and verifying background jobs.
- Interacting with MySQL databases via shell scripts — executing SQL queries using the mysql client, embedding SQL through EOF blocks, and handling structured CSV data using the Internal Field Separator (IFS).
- User administration and utilities:
- Building an administrative management script (ADM.sh) to automate user and group operations — adding/removing users (useradd, userdel), modifying shells (chsh), locking/unlocking accounts (usermod -L/-U), setting expirations (chage), and updating passwords.
- Performing bulk image management with convert (resize by dimension/percentage, format conversion).
- Taking screenshots using import (whole screen, region, or window capture).
- Managing multiple terminals using GNU screen — creating, switching, detaching, and reattaching sessions remotely.
- Key outcome:
Develop practical command-line and scripting proficiency for full-scale Linux system administration — covering process control, scheduling, user management, system monitoring, and automation.
You can listen and download our episodes for free on more than 10 different platforms:
https://linktr.ee/cybercode_academy