CIS 170 - Introduction to UNIX

Course Documentation

Assignments

  1. Unix/Linux basics (due 2/5/16)
  2. Filesystem basics (due 2/10/16)
  3. File details and globbing (due 2/17/16)
  4. Editors, processes, changing permissions (due //16)
  5. File manipulation (due //16)
  6. Regular expressions (due //16)

Notes

  1. Course overview (1/20/16)
  2. logging in (1/20/16)
  3. OS basics (1/20/16, 1/25/16)
  4. UNIX and Linux history (1/25/16)
  5. getting help (1/25/16)
  6. shell basics (1/27/16)
  7. command line structure (1/27/16)
  8. general system commands (1/27/16)
  9. filesystem basics (1/27/16)
  10. filesystem commands (2/1/16)
  11. file handling commands (2/3/16)
  12. hard and soft (symbolic) links (2/3/16)
  13. file details and access permissions (2/8/16)
  14. wildcard expansion (globbing) and brace expansion (2/8/16)
  15. redirection and piping (2/10/16)
  16. searching for files (2/10/16)
  17. communication and networking commands (2/10/16)
  18. processes, jobs, and signals
  19. text editor: vi
  20. text editor: emacs
  21. text editor: nano/pico
  22. file manipulation commands (cut, paste, uniq, tr)
  23. sorting
  24. file compression and archiving commands
  25. modifying the prompt (optional)
  26. Scripting basics
  27. Midterm exam review (3/2/16)
  28. Midterm exam (3/7/16)
  29. Regular expressions
  30. scripting basics
  31. arithmetic
  32. scripting: tests and selection
  33. heredocs
  34. scripting: repetition
  35. scripting: functions (11/16/15
  36. formatted output
  37. scripting: sed
  38. scripting: awk
  39. Final exam review
  40. Linux installation, package installation, Linux GUI discussion
  41. Final exam (5/16/16, 10:00 AM - 11:50 AM)

Spring 2015 scripting examples

  1. prog00.sh: shebang line, comments
  2. prog01.sh: use a variable, get input from the user
  3. prog02.sh: get input from the user (read command)
  4. prog03.sh: command substitution, environment variables, set exit status
  5. prog04.sh: special variable $0
  6. prog05.sh: special variables $0, $#, $1, $2, $?
  7. prog06.sh: tests (number of argumnets, string length, exit status), "if/else" statement
  8. prog07.sh: tests (file tests: exists, readable, etc.), "if/else" statement
  9. prog08.sh: tests: NOT (!), AND (-a)
  10. prog09.sh: repetition: "for" loop
  11. prog10.sh: repetition: running another script inside "for" loop
  12. prog11.sh: input validation (for valid integer) and repetition
  13. prog12.sh: input validation (for valid integer within range) and repetition
  14. prog13.sh: same as prog12.sh, but range is stored in variables
  15. prog14.sh: "for" loop displaying random numbers
  16. prog15.sh: "for" loop generating coin flips
  17. prog16.sh: "for" loop generating coin flips and counting them
  18. prog17.sh: "for" loop generating random numbers within a range
  19. prog18.sh: "while" loop to let user decide whether to run a nested loop again
  20. prog19.sh: "while" loop for user input validation, nested loops

Useful links

Return Links

Mr. Klick's Home Page