This syllabus is intended as a set of guidelines for the Unix operating System I course. North Lake College and your instructor reserve the right to make modifications in content, schedule and requirements as necessary to promote the best educational experience possible within prevailing conditions affecting this course.
| North Lake College | Lead Instructor: Dr. Tim Gottleber | |
| 5001 N. MacArthur | Office: T- 129 | |
| Irving, TX | Phone 972-273-3459 (3459 campus) |
|
| E-mail: timg@dcccd.edu |
This course is an introduction to the Unix operating system. Upon successful completion the student should be able to function at the entry level as a Unix user.
The following list of course goals will be addressed in the course.
(* designates a CRUCIAL goal)
SCANS data are included.
There is an explanation of SCANS available.
| Goal | Scans Competency/ Foundation | Evaluation |
|---|---|---|
| *1. Use the vi editor: | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Programming vi labs |
| a. add text to a file | ||
| b. append text to a file | ||
| c. delete text from a file | ||
| d. modify existing text within a file | ||
| e. replace text using the vi editor | ||
| f. move the cursor using vi editor commands | ||
| g. successfully save the changes made | ||
| h. use the vi editor's undo command | ||
| i. execute Unix shell commands from within the vi editor | ||
| j. use :set commands | ||
| k. search for specified text | ||
| l. use the vi editor's command mode | ||
| m. delete text from a file | ||
| n. cut and paste text | ||
| o. use the join command | ||
| p. copy and paste text | ||
| 2. change a file's last modified date | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 3. create a directory | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 4. create a file | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *5. demonstrate regular attendance | F8, F11, F13, F15, C1, | Regular attendance |
| 6. describe major advantages of the Unix Operating System. | F1, F5, F7, F12, F17 | Examination |
| 7. describe the use of a Unix file link | F1, F5, F7, F12, F17 | Examination |
| 8. describe the history of the ed editor | F1, F5, F7, F12, F17 | Examination |
| *9. describe the standard Unix process files | F1, F5, F7, F12, F17 | Examination |
| 10. describe the standard Unix login files | F1, F5, F7, F12, F17 | Examination |
| *11. diagram the major parts of the Unix system | F1, F5, F7, F12, F17 | Examination |
| 12. display a directory contents | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 13. display the contents of a file | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 14. erase a file | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 15. enter the C shell | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 16. leave the C shell | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 17. list Unix System Directories | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *18. log into the Unix system | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *19. log out of the Unix system | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 20. move a file to another directory | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *21. remove a directory | F1, F5, F7, F8, F9, F12, F14, F16, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 22. traverse the Unix directory tree | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *23. type properly formed Unix commands | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *24. use the "man" pages | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 25. use the kill command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 26. use the ps command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 27. use the cat command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 28. use the who command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 29. use the wc command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 30. compare the vi and ed and ex Unix editors | F1, F5, F7, F12, F17 | Examination |
| *31. change Unix shells | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 32. copy a file | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 33. describe redirection of output , input, and errors | F1, F5, F7, F12, F17 | Examination |
| *34. describe the history and purpose of grep | F1, F5, F7, F12, F17 | Examination |
| *35. describe the significance of case sensitivity | F1, F5, F7, F12, F17 | Examination |
| 36. describe the purpose for an inode | F1, F5, F7, F12, F17 | Examination |
| 37. describe the value of the sed editor | F1, F5, F7, F12, F17 | Examination |
| *38. determine file permissions | F1, F5, F7, F12, F17 | Examination |
| 39. differentiate between background and foreground processes | F1, F5, F7, F12, F17 | Examination |
| 40. distinguish between directory and ordinary Unix files | F1, F5, F7, F12, F17 | Examination |
| *41. explain a Unix filter | F1, F5, F7, F12, F17 | Examination |
| 42. explain the early history of Unix | F1, F5, F7, F12, F17 | Examination |
| 43. explain the value of learning the vi editor | F1, F5, F7, F12, F17 | Examination |
| 44. remove a directory containing files | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 45. list several built in C shell commands | F1, F5, F7, F12, F17 | Examination |
| *46. list major issues in Unix system security | F1, F5, F7, F12, F17 | Examination |
| 47. make a Unix shell file executable | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *48. manipulate Unix file system files | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 49. modify file permissions | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 50. perform command aliasing | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *51. print the contents of a Unix file | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 52. start the command history function | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *53. use command history | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 54. use the head/tail commands | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 55. use the more command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 56. use the Unix find command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *57. use various C shell control structures | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 58. modify text in a file using the ed editor | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Completing ed labs |
| 59. invoke and use awk | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Completing awk labs |
| a. define simple awk patterns | ||
| b. describe awk fields | ||
| c. build awk expressions | ||
| d. use regular expressions | ||
| e. describe awk constants | ||
| f. describe awk variables | ||
| g. describe decision making in awk | ||
| h. list awk command line options | ||
| i. make comparisons | ||
| j. perform flow control | ||
| k. perform pattern matching | ||
| l. execute system commands from within awk | ||
| m. invoke built-in functions | ||
| n. list special input related awk variables | ||
| o. write simple awk programs | ||
| 60. list process structure commands | F1, F5, F7, F12, F17 | Examination |
| *61. format a correct sed editor command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *62. build Unix pipes | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 63. create multiple Unix processes | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 64. define the concept of a Superuser | F1, F5, F7, F12, F17 | Examination |
| 65. describe metacharacters | F1, F5, F7, F12, F17 | Examination |
| 66. describe the basics of multi-processing | F1, F5, F7, F12, F17 | Examination |
| 67. describe Unix special files | F1, F5, F7, F12, F17 | Examination |
| *68. differentiate between Bourne and C shell scripts | F1, F5, F7, F12, F17 | Examination |
| 69. explain the purpose of shell scripts | F1, F5, F7, F12, F17 | Examination |
| 70. use grep as a filter | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *71. use grep on multiple files | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 72. use the tr utility | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 73. use the Unix stty command | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 74. use file matching metacharacters in a file description | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| *75. write short C shell scripts | F1, F2, F3, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Complete lab assignment |
| 76. understand the major functions of an Operating System | F1, F5, F7, F12, F17 | Examination |
| 77. understand the major features of each Unix shell | F1, F5, F7, F12, F17 | Examination |
| *78. sort a file using field specifiers | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Completing lab exercise |
| *79. use the sed editor | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Completing sed lab assignment |
| 80. incorporate a tee structure into Unix pipe | F1, F5, F7, F8, F9, F12, F14, F16, C1, C5, C6, C7, C8, C15, C16, C17, C18, C19, C20 | Completing lab exercise |
| *81. explain Unix regular expression | F1, F5, F7, F12, F17 | Examination |
| 82. use the Unix mail utility (or another Unix mail program) | F2, C8, C14, C18, C19 | Completing lab exercise |
| 83. use common Unix tools to communicate with other users on the system. | F2, C8, C14, C18, C19 | Completing lab exercise |
Each student will spend at least 12 hours per week preparing for class.
Attendance at each class meeting is critical and required in this class.
The student is expected to complete each lab assignment using either the
computers here at North Lake College, or their own computer running a Unix
operating system (or a variant which conforms to the general Unix standard.
The Linux operating system is considered an excellent choice for a
386/486/586/Pentium machine.)
| A = 544 points and above 90% |
| B = 543 - 484 points 80% |
| C = 483 - 424 points 70% |
| D = 423 - 363 points 60% |
| F = fewer than 363 points |
Listed below is a tentative schedule of the topics for lectures
for the Unix Operating System I course. Please note: the student is expected to
complete each reading assignment before the class date associated with that
reading. Note: All readings are from the Waite book, students are also
expected to consult any other texts to obtain additional information on the
topics listed for each lecture.
| Week # | Topics | References | Commands/concepts |
|---|---|---|---|
| 1 | Introduction to Unix | lecture, | |
| 19 - 57, | history of Unix, login, passwd, exit | ||
| Getting Started | 221 - 223 | logout, who, w | |
| process concept, | finger, mail, man | ||
| talk, mesg, write | |||
| wall, stty, cal, date | |||
| (pine) | |||
| 2 | File Handling in Unix | 59 - 70, | pwd, touch |
| 131 - 156, | mkdir, cd, .., ., | ||
| 177 - 180, | ls, cat, more, less | ||
| rm, rmdir, mv, cp | |||
| Meta characters and history | 202 - 203, | *, ?, [...], | |
| Commands etc. | 207 - 210, | history, wc | |
| lecture, | |||
| 216 - 220, | inode, head, | ||
| 272 - 280, | tail, pg, ln, | ||
| 302 - 304, | quota | ||
| 50 - 61 | |||
| 3 | Unix editors ed and ex | lecture, | |
| lab guide, | ed, | ||
| 79 - 107, | ex, | ||
| Introduction to the vi editor | lecture | vi | |
| 4 | Advanced vi | lecture | vi |
| review for TEST 1 | |||
| Commands and concepts | 71 - 72, | lpr, lprm, | |
| 207 - 208, | lpq , file, chmod | ||
| 215 - 221 | |||
| 5 | TEST 1 (In Class) | ||
| Multi-processing and job control | lecture, | process states | |
| 169 - 177 | bg, fg, stop, ps, kill, ^Z, jobs | ||
| 6 | Multi-processing II | 72 - 76, | |, find, tee, pipes, filters, |
| 162 - 168, | redirection, >, <, >> | ||
| 185 - 190 | |||
| Handy tools | 196 - 204, | alias, diff, uniq, | |
| Shell concepts | 229 - 230 | name completion | |
| shell vars, .cshrc, .login, .profile | |||
| 7 | cool tools I translate | lecture, | tr, sort |
| regular expressions | 210 - 212, | ||
| cool tools II grep(s) | 233 - 243, | egrep, fgrep, grep | |
|
cool tools III sed review for TEST 2 |
253 - 260, | sed | |
| 265 - 269 | |||
| 8 | More time with sed | ||
| ftp concepts | |||
| 9 | TEST 2 (In Class) | ||
| Introduction to awk | lecture | awk | |
| 269 - 272 | |||
| 10 | yalaa (yet another look @ awk) |
||
| 11 | More time with awk | ||
| review for TEST 3 | |||
| 12 | TEST 3 (In Class) | ||
| Programming Concepts | lecture | ||
| Shell scripting examples | |||
| 13 | Shell scripting I | lecture | Bourne Shell, #, case, echo, env |
| expr, if, sleep, test | |||
| line, printf, break, continue | |||
| read, readonly, if, for, exit | |||
| shift, while | |||
| Shell scripting II | |||
| 14 | Shell scripting III | ||
| Shell scripting IV | |||
| Review for final exam | |||
| 15 | Catch up (general panic reduction) | Nothing Left! ;-) * | |
| Finals Week | Final Exam (in class) {date is TBD} | ||