Scripts / Tools
Home Up Professor Unix Scripts / Tools Web Tools


Phone button #1 (869 bytes)  Using Operating System Tools

This course is designed for users who have mastered basic commands for manipulating files and navigating directories and are ready to begin using powerful data manipulation tools and shells.

Basic programming constructs are introduced in the context of scripting languages.

You will devise scripts (written in any of several scripting languages) that interact with users, access command-line arguments, make decisions, and return success/failure exit statuses.

This course combines coverage of the shell language and working environment with advanced utilities such as perl, sort, grep, sed, and awk.

Course Information


8 weeks, 13 hours per week (104 hours)


3 hours lecture (professor)
3 hours lab (professor)
7 hours group work (instructor)


Unix: Sun Solaris, Linux (Intel platform)
Microsoft Windows: Intel platform


To succeed in this course, you must already be able to:

Create and edit ASCII text files using some Text Editor
Unix: vi, ed, etc.
Windows: notepad, write, vim, etc.
Navigate among files and directories
Unix: cd, ls, pwd, etc.
Windows: cd, dir, pwd, etc.
Use basic tools to manipulate files and directories
Unix: rm, cp, cat, mkdir, etc.
Windows: delete, copy, type, mkdir, etc.

Course Learning Objectives

After this course, you will have acquired the following skills:

Basic Skills:

Programming: variables, loops, branching, conditional statements
Elementary and advanced scripting using both shells and tools
Character, text, number, and string manipulation

Shell Environment:

Environment variables, search path, input/output redirection
Aliases, command history
Exit status, determining if a command failed
Conditional statements

Searching and sorting:

Extract information from files using patterns and regular expressions
(perl, grep, sed, awk, ed, ex, sh, ksh, csh)
Sort files and data by field
(perl, sort)

Editing and reporting:

Perform complex and/or global noninteractive edits on many files
(perl, sed, ed, ex)
Summarize and report on log files, data files, system information
(perl, awk)