techniques shell

advertisement
SUFFOLK COUNTY COMMUNITY COLLEGE
COLLEGE-WIDE COURSE SYLLABUS
CS51 (CST
I.
COURSE TITLE:
Windows Scripting and UNIX Shell Programming
II.
CATALOG DESCRIPTION 2006-2008
Windows scripting and UNIX shell programming techniques are of significance
in areas of system/networking administration and cyber security. Most
administrative tasks can be accomplished using these techniques in an efficient
fashion. Cyber security specialists also often make use of these techniques to
prevent and counter cyber attacks. This course introduces key concepts for each
of Microsoft’s primary system administration scripting technologies, including:
Microsoft® Visual Basic® Scripting Edition (VBScript); Windows Script Host
(WSH); the Script Runtime library; Active Directory Service Interfaces (ADSI);
and Windows Management Instrumentation (WMI). It covers UNIX Bourne,
Korn, and C shell programming. Basic techniques in Perl programming are also
discussed. Prerequisite: CS28.
III.
STUDENT LEARNING OUTCOMES:
Upon successful completion of this course, students will be able to:
1. understand basic Windows and UNIX/Linux scripting techniques
2. write scripts for basic system/network administrative tasks, and
3. use scripts for cyber security assessment and implementation.
IV.
Topics Outlines with Timeline:
Weekly Outline Topics to be covered:
Introduction to scripting in Windows environment
a. Windows architecture and scripting environment
Windows Script Host (WSH) and the Script Runtime library
a. Overview
b. Architecture
c. Running WSH scripts
d. WSH objects
e. Securing scripts
Microsoft® Visual Basic® Scripting Edition (VBScript)
a. Overview
b. Scripting environment
Microsoft® Visual Basic® sample scripts
a. Introduction to Microsoft Technet script repository
b. Sample scripts for system administration
Microsoft® Visual Basic® Scripting techniques I
1.
2.
3.
4.
5.
a. Working with objects
b. Variables
c. Constants
d. Strings
e. Collections
6. Microsoft® Visual Basic® Scripting techniques II
a. Looping
b. Arrays
c. Input/Output
d. Error handling
7. Active Directory Service Interfaces (ADSI) and Windows Management
Instrumentation (WMI)
a. ADSI overview
b. ADSI scripting fundamentals
c. Active Directory architecture
d. ADSI architecture
e. WMI overview
f. WMI architecture
g. Common information model
h. WMI scripting library
i. Writing WMI scripts
8. Introduction to UNIX/Linux shell programming
a. UNIX/Linux shells and kernels
b. Text editors: vi and emacs
c. The environment and inheritance
d. System startup and login shells
9. Bourne and Korn shell techniques I
a. The environment
b. Metacharacters
c. Variables
d. Quoting
e. Command substitution
f. Functions
g. Standard I/O and redirection
h. Pipes
i. The here document and Redirection
10. Bourne and Korn shell techniques II
a. The steps in creating a Bourne/Korn shell script
b. Reading user input
c. Arithmetic
d. Positional parameters and command line arguments
e. Conditional constructs and flow control
f. The case command
g. Looping commands
h. Functions
i. Trapping signals
j. The set command and options
k. Shell built-in commands
11. Bourne and Korn shell examples
12. C shell techniques I
a. The environment
b. The command line
c. Command line history
d. Aliases
e. Job control
f. Metacharacters
g. Expanding the metacharacters
h. Redirection and pipes
i. Variables
j. Special variables
k. Command substitution
l. Quoting
13. C shell techniques II
a. Steps in creating a C shell script
b. Reading user input
c. Arithmetic
d. Debugging scripts
e. Command line arguments
f. Flow control and conditional constructs
g. Loops
h. Looping commands
i. Interrupt Handling
j. Setuid scripts
k. Storing scripts
l. Built-in commands
14. Basics of AWK, Sed, and Grep
a. Variables
b. Redirecting and pipes
c. Closing files and pipes
d. Conditional statements
e. Loops
f. Program control statements
g. Arrays
h. The streamlined Editor (Sed) overview
i. The grep family
15. Introduction to Perl scripting
a. Variables
b. Commands
c. Functions
d. Loops
e. Decisions
f. Input/Output
V.
Evaluation of Student performance:
To be determined by the instructor.
VI.
Programs that require this course:
VII.
Courses that require this course as a prerequisite:
CS52
IX.
Supporting Information:
Download