SPR720 -- Shell Programming
Weekly Outline
See the Fall 2008 SPR720 Weekly Schedule for specific dates and topics.
Course Outline
Subject Description
Unix/Linux System Administrators use scripts to automate repetitive tasks, schedule tasks for execution at preset times, automate software installation/removal processes, and build tools. This course looks shell programming and scripting in the Bourne Again SHell (BASH), RPM spec files, and introductory Python. Students will learn how to write, debug, run, and modify BASH scripts, spec files, and python scripts.
Specific Outcomes
Upon successful completion of this subject students should be able to:
* Create and use BASH scripts * Create and use Makefiles * Create RPM Specfiles * Build RPM packages * Use Mock to test RPM build dependencies * Create and use simple Python scripts * Use regular expressions * Use common Linux commands
Topic Outline
* Open Source and Linux history and overview * Bash scripting basics and Linux commands - 20% * Makefiles - 10% * Building packages (SPEC files, rpmbuild, Mock, repositories) - 40% * Python scripting basics - 20% * Using Python libraries - 10%
Modes Of Instruction
2 hours interactive lecture per week, and 2 hours lab time per week
Prescribed Text
Learning Python - 3rd Edition by Mark Lutz; ISBN 0-596-51398-4 published by O'Reilly
Reference Material
Learning the BASH Shell by Bill Rosenblatt and Cameron Newham Published by O'Reilly and Associates - 2nd Edition - 1998 ISBN 1-565-923-472
Promotion Policy:
To obtain a credit in this subject, a student must:
- Achieve a grade of 55% or better on the final exam
- Satisfactorily complete all assignments
- Achieve a weighted average of 55% or better for the tests and final exam
- Achieve a grade of 55% or better on the overall course
Modes of Evaluation:
- Final Exam 40%
- Midterm Test 30%
- Term Work 30%