CyberCode Academy

Course 4 - Learning Linux Shell Scripting | Episode 9: Process Management, Scheduling, User Control, and Scripting Utilities


Listen Later

In this lesson, you’ll learn about:
  • 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
...more
View all episodesView all episodes
Download on the App Store

CyberCode AcademyBy CyberCode Academy