Shell Scripting Learning Plan - 2 Hours/Day
Week 1 (Days 1–7): Shell Scripting Basics
- Day 1–2: Linux commands (ls, cd, mv, rm, cat, touch, chmod)
- Day 3–4: Variables, quoting, and user input
- Day 5: Redirection, piping, and command substitution
- Day 6–7: Conditional statements (if, else, elif), test conditions
Mini Projects:
- Script to create backups of a directory
- Script to display system info (CPU, memory, disk)
Week 2 (Days 8–14): Control Structures & Functions
- Day 8–9: Loops (for, while, until), break & continue
- Day 10: Writing and using functions
- Day 11: Script arguments and parameters ($1, $@, $#)
- Day 12: Exit statuses and error handling
- Day 13–14: Practice with realistic scripts
Mini Projects:
- Log cleaner script
- Script to rename or organize files by extension
Week 3 (Days 15–21): Text Processing & Automation
- Day 15–16: grep, sed, awk, cut, sort, uniq
- Day 17: crontab, scheduling tasks
- Day 18–19: Real-world automation scenarios (log rotation, email alerts)
- Day 20–21: Combine tools into larger scripts
Mini Projects:
- Analyze a log file and generate a report
- Automated report emailed daily (simulate email)
Week 4 (Days 22–28): Interview Preparation & Real-World Practice
- Day 22–24: Solve 20+ shell scripting interview questions
- Day 25–26: Practice writing/reading complex scripts
- Day 27: Mock test — write and debug under time constraints
- Day 28: Final review & confidence boost