← Back to trackModule: Networking + Shell (Week 3)

BEGINNER · Medium · 70m

Write your first automation script

Foundations Bootcamp

Lesson notes

Goal

Write a safe, reusable script that checks a service, collects logs, and prints a clean summary.

Script building blocks

  • variables
  • functions
  • exit codes
  • strict mode (optional)

Example: service health script

#!/usr/bin/env bash
set -euo pipefail

SERVICE=${1:-nginx}

echo "Checking: $SERVICE"
systemctl is-active --quiet "$SERVICE" && echo "ACTIVE" || echo "NOT ACTIVE"

echo "Recent logs:"
journalctl -u "$SERVICE" -n 30 --no-pager || true

Make it executable

chmod +x health.sh
./health.sh nginx

Exercises

  1. Add a flag --since to change the log window.
  2. Add a check for open port (using ss or nc).
  3. Make it print a final PASS/FAIL summary.

Next Step

This is the foundation for automation in CI/CD and production operations.

View full outline

Outline

Use the outline to jump to any topic.

Track tools

Search lessons, continue where you left off, and track completion.

Modules

3

Lessons

9

Estimated Time

515m

Completion

0%

0/9 lessons

Your progress: 0%

Complete a lesson to increase progress

Outline

Open a lesson for full notes. Mark completed to update your progress.

Goal: By the end of this lesson you will be able to move around any Linux server quickly, understand where you are, and find what you need without guessing. This is not about memorizing commands. It is about building a m…

Goal: Understand Linux permissions well enough to fix "permission denied" problems quickly and safely. The Mental Model Every file/folder has: an owner (user) a group permissions for user/group/others Read it as: first c…

Goal: Control services confidently and read logs like an operator. What systemd is (simple) systemd is the service manager on most modern Linux distros. It starts services, restarts them, manages dependencies, and record…

Goal: Use Git the way teams actually work: small commits, feature branches, pull requests, reviews, and safe merges. The Workflow (end to end) Steps: 1. Sync with main 2. Create a branch 3. Commit small changes 4. Push b…

Goal: Recover from Git mistakes without losing work or breaking shared history. The Rule If the commit is already pushed and others might have it: prefer git revert (safe) If it is only local (not pushed): git reset is f…

Goal: Understand common branching strategies and when to use each. Strategy 1: Trunk based (recommended for fast teams) Idea: main stays deployable; branches are short lived. Pattern: small branches frequent merges featu…

Goal: Understand the minimum networking needed to debug real production issues: DNS, ports, HTTP, and TLS. The 4 step model When a request fails, check: 1. DNS: can we resolve the name? 2. Network: can we reach the IP/po…

Goal: Turn messy logs into clear answers using grep/awk/sed and a few patterns you will reuse forever. grep (search) Tips: n : show line number R : recursive E : regex i : case insensitive awk (extract columns) Common us…

Goal: Write a safe, reusable script that checks a service, collects logs, and prints a clean summary. Script building blocks variables functions exit codes strict mode (optional) Example: service health script Make it ex…