Updating our Linux Subjects - Summer 2012
Contents
Updating Our Linux Subjects - Summer 2012
The Linux subjects consist of the following:
- ULI101 - Introduction to Unix/Linux and the Internet
- OPS235 - Introduction to Open System Servers
- OPS335 - Open System Application Server
- OPS435 - Open System Automation
- OPS535 - Open System Application Server
Currently, very little BASH scripting is taught in each of ULI101, OPS235, OPS335 and OPS535. OPS435, on the other hand, focuses 100% on BASH programming. The drawback with this configuration is that students must learn BASH in one semester. A better configuration would be to spread BASH programming over the 5 subjects. This would provide continuity over 5 semesters not just for BASH programming but for system administration content as well - since OPS435 would now have a large component of system administration activities as well as some BASH programming.
Each of the 5 subjects would require a BASH scripting component. Below is a first pass at fleshing out what BASH concepts/commands need to be taught in each of the courses. Feel free to add your own ideas.
ULI101
- Structure of a BASH script
- #!/bin/bash
- arguments $#, $0, $1, $2, ...
- return value $?
- execute permission - chmod u+x
- Pipelining
- connect output to input as in ls | wc -l
- File Redirection
- redirect output to a file as in ls > mylist or ls >> mylist
- I/O
- echo command
- BASH Filename Expansions
- ls *, ls *.c
OPS235
- BASH Variables
- user variables
- environment variables like $USER
- BASH Expansions
- file name
- variable
- Control Structures
- test command
- if statement
- Arithmetic Operators
- +, -, *, /, %, **
- Bitwise Operators
- |, &, ^, <<, >>
- Logical Operators
- ||, &&
- I/O
- read statement
- BASH Filters
- sort
OPS335
- Basic Regular Expressions
- grep
- Basic Arrays
- Loop Structures
- for
- while
- until
- I/O
- printf statement
OPS435
- Functions
- Extended Regular Expressions
- Associative Arrays
- AWK Programming
OPS535
- Special Files
- /dev/tcp
- /dev/udp
- SED Programming