Active Outline
General Information
- Course ID (CB01A and CB01B)
- CISD318A
- Course Title (CB02)
- Introduction to Unix/Linux
- Course Credit Status
- Non-Credit
- Effective Term
- Fall 2023
- Course Description
- This course is an introduction to the features of the Unix/Linux operating system including text editing, text file manipulation, electronic mail, Internet utilities, directory structures, input/output handling, and shell features.
- Faculty Requirements
- Course Family
- Not Applicable
Course Justification
This is a noncredit enhanced, CTE course that is part of the Introduction to Computer Science Certificate of Completion. This course is intended as an introduction to the Unix/Linux Operating System.
Foothill Equivalency
- Does the course have a Foothill equivalent?
- No
- Foothill Course ID
Formerly Statement
Course Development Options
- Basic Skill Status (CB08)
- Course is not a basic skills course.
- Grade Options
- Pass/No Pass
- Repeat Limit
- 99
Transferability & Gen. Ed. Options
- Transferability
- Not transferable
Units and Hours
Summary
- Minimum Credit Units
- 0.0
- Maximum Credit Units
- 0.0
Weekly Student Hours
Type | In Class | Out of Class |
---|---|---|
Lecture Hours | 4.0 | 8.0 |
Laboratory Hours | 1.5 | 0.0 |
Course Student Hours
- Course Duration (Weeks)
- 12.0
- Hours per unit divisor
- 36.0
Course In-Class (Contact) Hours
- Lecture
- 48.0
- Laboratory
- 18.0
- Total
- 66.0
Course Out-of-Class Hours
- Lecture
- 96.0
- Laboratory
- 0.0
- NA
- 0.0
- Total
- 96.0
Prerequisite(s)
Corequisite(s)
Advisory(ies)
ESL D272. and ESL D273., or ESL D472. and ESL D473., or eligibility for EWRT D001A or EWRT D01AH or ESL D005.
CIS D004.
Limitation(s) on Enrollment
Entrance Skill(s)
General Course Statement(s)
NONCREDIT: (This is a noncredit enhanced, CTE course.)
Methods of Instruction
Lecture and visual aids
Discussion of assigned reading
Discussion and problem solving performed in class
Quiz and examination review performed in class
Collaborative learning and small group exercises
Laboratory discussion sessions and quizzes that evaluate the proceedings weekly laboratory exercises
Homework and extended projects
Assignments
- Reading in textbook and lecture notes
- 7-10 homework lab assignments to be done on a Unix/Linux system, and the assignments are on using different utilities for file manipulation, networking, and communication
Methods of Evaluation
- Evaluation of lab and homework assignments for completeness and correctness in using the Unix / Linux operating system utilities and the shell.
- Exams and quizzes to determine proficiency in working with the components of the Unix/Linux operating system and on using utilities and the shell for file manipulation, networking, and communication
- Comprehensive final exam to determine proficiency in working with the components of the Unix / Linux operating system and on using utilities and the shell for file manipulation, networking, and communication
Essential Student Materials/Essential College Facilities
Essential Student Materials:Â
- None.
- Computer lab with access to a Unix/Linux server
Examples of Primary Texts and References
Author | Title | Publisher | Date/Edition | ISBN |
---|---|---|---|---|
Sobell Mark, "A Practical Guide to Linux: Commands, Editors, and Shell Programming", 4th Edition, Addison-Wesley, 2017 |
Examples of Supporting Texts and References
Author | Title | Publisher |
---|---|---|
None. |
Learning Outcomes and Objectives
Course Objectives
- Edit text using the vim editor
- Create file and directory system
- Investigate security and file permission
- Apply and investigate different shells
- Perform basic file maintenance and use information utilities
- Apply shell features
- Apply quoting rules
- Demonstrate user interaction with email and other communication utilities
- Apply filters
- Apply networking utilities
- Apply the extended set of regular expressions
CSLOs
- Use the Unix/Linux Operating System utilities and shell features for basic file manipulation, networking, and communication.
Outline
- Edit text using the vim editor
- Data input and saving
- Insert and command mode
- Editing and file manipulation
- Local, range, and global commands
- Handling text objects in search and substitution
- Adding, cutting, pasting, and deleting text
- Create file and directory system
- File names and wild cards
- File types
- Regular files (text and binary)
- Directories (special directories, path and pathnames, relative pathnames, absolute pathnames)
- File system implementation (file system structure, inodes, hard and symbolic links)
- Operations applied only to directories (pwd, ls, mkdir, cd, and rmdir)
- Operations applied only to regular files (more, lpr)
- Operations applied to both directories and regular files (cp, mv, ln, rm, find)
- Investigate security and file permission
- Users and groups
- Security levels
- /etc/passwd file
- Permissions for files and directories
- Changing permission (symbolic and octal)
- User masks
- Apply and investigate different shells
- Job control
- Aliases
- Variables
- Shell/environment customization
- Perform basic file maintenance and use information utilities
- History
- Types of UNIX / LINUX systems available
- Hardware platforms running UNIX / LINUX
- Logging in/out
- Basic attributes of UNIX / LINUX commands and filenames
- Commands such as date, cal, who, passwd, echo, and man
- Script command
- Apply shell features
- Standard file input / output
- Redirection (input, output, and error)
- Pipe and Tee
- Command execution (sequence commands, group commands, chained commands)
- Command line editing and history files
- Apply quoting rules
- Quotes (backslash, single quote, double quote)
- Command substitution
- Demonstrate user interaction with email and other communication utilities
- talk
- write
- Apply filters
- Concept
- cat, head, and tail commands
- cut and paste commands
- sort command including multiple-field and multiple-pass sorting
- tr, unique, and wc commands
- Apply networking utilities
- ssh
- sftp
- Apply the extended set of regular expressions
- Atoms (single character, dot, class, anchor)
- Operators (sequence, alternation, repetition, group)
Lab Topics
- Use basic utilities to explore system data, user data, and common tasks: exit, passwd, who, whoami, finger, w, tty, stty, uname, clear, man, lpr, script, bc, date, cal, echo, exit
- Differentiate the different file types; explore filename conventions and use wildcards; use utilities that manipulate regular files: cat, more, less, ls, touch, cp, mv, rm
- Use the vim editor to edit text files with basic commands to move to a certain place in the file, add, delete, search, replace, substitute, copy and paste, cut and paste, bring in another file, save to another file, undo redo, save, quit
- Work with the directory tree and path name conventioni; use utilities that work with directories: pwd, cd, mkdir, rmdir, which, whereis, find
- Investigate the concept of links and types of links; create links to regular files and directories; explore inodes
- Communicate with other users using write and talk; send and receive mail, including reply, forward, save functions; work across the network using ssh and sftp
- Demonstrate the levels of permission (ugo) and the types of permission (rwx); set file permission; explore the effects of different types of permissions; changing the permission mask
- Using features of the shell: redirection, tee, pipe, running commands one one command line, command grouping, command substitution, quoting rules, job control, variables, environment variables, aliases, command history; explore the major types of shell
- Use filters to produce a required output: more, less, head, tail, cut, paste, wc, uniq, diff, comp, sort, egrep
- Use the extended set of regular expressions for pattern matching: atoms, anchors, operators