C-ID Descriptor
General Course Title: Linux Shell Scripting and Programming

Descriptor Details

  • General Course Title: Linux Shell Scripting and Programming
  • Not Identified
  • 135
  • Not Identified
  • Not Identified
  • 3
  • Not Identified
  • Uploaded: Problem accessing file: template_749.doc

This course introduces a variety of the tools and concepts used while working with a UNIX/Linux-based computer system. Students will learn to write shell scripts using basic commands and regular expressions. They will then use those tools to write scripts first with basic shell commands, then with grep, sed, and awk, then with more advanced decision-making and flow control commands. Other scripting tools such as Perl and Python will also be explored. Students will write shell script programs to exercise their understanding of tools and concepts. This course will be taught using a combination of lectures, demonstrations, discussions, and hands-on labs.

None

None

ITIS 155 - Systems and Network Administration (3)

  1. Getting started and working with shell scripting
    1. The Linux and Mac OS X Operating Systems
    2. The Utilities
    3. The Filesystem
    4. The Shell
    5. The vim Editor
  2. The Shells
    1. The Bourne Again Shell (bash)
    2. Precursors to the BASH shell (such as Bourne and Korn)
    3. The Tenex C (TC) Shell (tcsh)
  3. Shell Scripting
    1. Process management, job control, and automation
    2. Using text processing and filters in your scripts
    3. Working with commands
    4. Exploring expressions and variables
    5. Performing arithmetic operations in shell scripts
    6. Automating decision making in scripts
    7. Working with functions
    8. Using advanced functionality and repetition in scripts
    9. System startup and customizing a Linux system
  4. Programming Tools
    1. Programming the Bourne Again Shell (bash)
    2. Programming control structures
    3. The AWK Pattern Processing Language
    4. Design reports using AWK
    5. The sed Editor
    6. Construct sed scripts to facilitate editing documents in batch
    7. The Perl Scripting Language
    8. Compare the Perl language to shell scripts
    9. The Python Programming Language
    10. Compare Python to shell scripting
    11. The MySQL Database Management System
    12. Demonstrate ways to store data in an organized way in a DB


At the conclusion of this course, the student should be able to:

  1. Construct regular expressions containing metacharacters for use at the command line or in shell scripts.
  2. Demonstrate proficiency using: grep to search for regular expressions in files; the vi editor for creating and editing text files; sed to perform editing tasks useful in shell scripts; and awk for manipulating data and generating reports.
  3. Write shell scripts: using command substitution to capture program output; to perform repetitive tasks using while and for loops; using conditional statements to control the execution of shell scripts design and implement shell functions; and identify and process command-line arguments.
  4. Write shell scripts using Bash, demonstrating knowledge of the appropriate environment commands to accomplish tasks such as data search and retrieval, file editing, system administration and backup.
  5. Write a simple program using PERL, Python, and/or to access a MySQL database.

Evaluation will include hands-on projects and a combination of examinations, presentations, discussions, or problem-solving assignments.

  • Mark G. Sobell, A Practical Guide to Linux Commands, Editors, and Shell Programming, Prentice Hall
  • Arnold Robbins, Bash Pocket Reference: Help for Power Users and Sys Admins, O’Reilly
  • William E. Shotts, Jr., The Linux Command Line, available for download at http://linuxcommand.org/tlcl.php (No-cost alternative)

  • No
  • Not Identified

  • Not Identified

  • Not Identified

  • Not Identified

  • Not Identified