OPS435 - Open System Automation

Outline info
Last revision date 2017-11-21 11:07:53.086
Last review date 2017-11-21 11:08:02.286

Subject Title
Open System Automation

Subject Description
The subject will teach students the creation of error-free and maintainable shell scripts to automate day-to-day UNIX/Linux administrative tasks. Students will examine system scripts such as boot scripts and log generators. Exploring destructive scripts such as Trojan Horses will further the student's understanding of how to protect themselves from malicious programs. Upon successful completion of this course, students will be able to administer UNIX/Linux systems with much less effort through automation.

Credit Status
1 credit in the CTY Program

Learning Outcomes
Upon successful completion of this subject the student will be able to:

1. Design, contruct, test and modify complex shell scripts

2. Create, manage and change environment variables

3. Make appropriate use of Filename Expansion

4. Construct and use Regular Expressions

5. Use Unix filters such as awk, grep, sed and sort

6. Manage script versioning

Cheating and Plagiarism
Each student should be aware of the College's policy regarding Cheating and Plagiarism. Seneca's Academic Policy will be strictly enforced.

To support academic honesty at Seneca College, all work submitted by students may be reviewed for authenticity and originality, utilizing software tools and third party services. Please visit the Academic Honesty site on http://library.senecacollege.ca for further information regarding cheating and plagiarism policies and procedures.

All students and employees have the right to study and work in an environment that is free from discrimination and/or harassment. Language or activities that defeat this objective violate the College Policy on Discrimination/Harassment and shall not be tolerated. Information and assistance are available from the Student Conduct Office at student.conduct@senecacollege.ca.

Accommodation for Students with Disabilities
The College will provide reasonable accommodation to students with disabilities in order to promote academic success. If you require accommodation, contact the Counselling and Disabilities Services Office at ext. 22900 to initiate the process for documenting, assessing and implementing your individual accommodation needs.


Topic Outline

Scripting Basics
-File name exapansion
-Shell Concepts
-Use of variables
-Utilization of Regular Expressions
Search and Act Utilities
-Use of Quotes
-Command Line Arguments
Decisions and Loops
-if,then, elif, else, && contructs, || construct
-case, for, while, until
Unit Filters
- .grep
- .sed
- .awk
- .sort
Revision Control System
-Using version management tools to keep track of scripting changes
-Debugging of new and existing scripts

Mode of Instruction
Classroom lectures and discussions are supplemented by lab sessions with the instructor, reinforced by assigned readings and assignments between classes. 

It is the student's responsibility to save documents, articles and notes that the instructor has provided on BlackBoard or in class. Students will not be able to access BlackBoard as of the last day of the student’s class.

Prescribed Texts
Unix Shell Programming 3rd Edition
by Stephen Kochan, Patrick Wood, SAMS, ISBN#9780672324901  

Required Supplies
Removeable Hard-drive, and a USB storage device. 

Promotion Policy

Grading Policy
A+ 90%  to  100%
A 80%  to  89%
B+ 75%  to  79%
B 70%  to  74%
C+ 65%  to  69%
C 60%  to  64%
D+ 55%  to  59%
D 50%  to  54%
F 0%    to  49% (Not a Pass)
EXC Excellent
SAT Satisfactory
UNSAT Unsatisfactory

For further information, see a copy of the Academic Policy, available online (http://www.senecacollege.ca/academic-policy) or at Seneca's Registrar's Offices.

Modes of Evaluation
Since this is a professional credit subject, marking standards reinforce professional practice by demanding legible, tidy work. Written materials should be well organized and grammatically correct, with proper spelling and punctuation.


  • Students must retain a duplicate of all assignments.
  • Computer assignments should be documented to the instructor's standards.
  • Assignments must be handed in on the scheduled due date. Late assignments are penalized.
  • For particulars, please obtain standards, dates, etc. from your instructor.

Absenteeism and Tests
  • Students should be aware that absenteeism will impact on their ability to achieve satisfactory grades.
  • If you miss a test, you must provide the reason in writing to the instructor prior to the next scheduled class. If your reason is accepted, you will be permitted to write a make-up test. Otherwise, you will be given a zero for the test. You must submit an original doctor’s certificate identifying the date, length of time of expected absence and the specific reason for your absence, or other appropriate documentation.

Term Work and Final Exam
  • Students must attain a combined grade of at least 50% on term work and the final exam. Students must pass the final exam in order to pass the subject
  • For further information on evaluation and academic standing, see a copy of the Academic Policy available at Seneca registration offices.

Grading is based on the following marking scheme:

Quizzes and Labs 30%
Assignments 20%
Midterm 20%
Final Exam                                            30%

Approved by: Denis Gravelle