IT 244: Introduction to Linux/Unix
Class 28 - Final Review

Review


Microphone

Final Exam

The final exam will be held on Tuesday, May 19th 3:00 PM - 6:00 PM.

The exam will be held in this room.

If for some reason you are not able to take the Final at the time it will be offered, you MUST send an email to me before the exam so we can make alternative arrangements.

60% of the points on this exam will consist of questions from the Weekly Graded Quizzes.

You do not need to study a Graded Quiz question if the topic is not mentioned in either the Midterm or Final review.

There is a link to the answers to the graded quizzes on the class web page.

The other questions I will make up specifically for this exam.

For these questions you will have to know

The today's class will be a review session.

You will only be responsible for the material in today's class, and the review for the Midterm, which you will find here.

Although the time alloted for the exam is 3 hours, I would expect that most of you would not need that much time.

The final is a closed book exam.

To prevent cheating, certain rules will be enforced during the exam.

Remember, the Midterm and Final determine 50% of your grade.

Course Evaluation

At the end of each semester we offer you the opportunity to say what you think about this course.

What have I done right?

What have I done wrong?

What can I do better?

You are not asked for you name.

So the submissions are anonymous.

I will not see your responses until after I have submitted grades for this course.

We collect this feedback through Course Evaluations.

I will use what you say to make this course better.

To complete the course evaluation, use the following link .

After I finish speaking I will leave the class but stand outside the door.

I will ask all of you to fill out the Course Evaluation

No Class Next Week

A normal semester has 28 classes.

But this semester has 29.

I do not have materials for a 29th class.

Next Tuesday I will have Zoom Office Hours, from 9 AM to 5 PM, instead of a class.

Attendance

Review

Running a Command in the Background

Jobs

Moving a Job from the Foreground into the Background

Aborting a Background Job

Pathname Expansion

The ? Metacharacter

The * Metacharacter

The [ and ] Metacharacters

Built-ins

Creating Startup Files

Redirecting Standard Error

Shell Scripts

Making a Shell Script Executable

Specifying Which Version of the Shell Will Run a Script

Comments in Shell Scripts

Shell Variables

Local Variables

Global Variables

Keyword Shell Variables

User-created Variables

Positional and Special Parameters

Quoting and the Evaluation of Variables

Processes

Process Structure

Process Identification

Executing a Command

The Readline Library

Readline Completion

Aliases

Shell Modification of the Command Line

Alias Substitution

Tilde, ~, Expansion

Parameter and Variable Expansion

Pathname Expansion

  • After alias substitution, Bash performs brace expansion
  • Braces, { }, allow you to create several strings all at once
  • Braces can appear with strings of characters in front or behind
  • The braces contain strings of characters separated by commas
  • The expansion creates multiple strings
  • One for each string contained within the braces
  • If I wanted to create 5 foo files I could use braces expansion as follows
    	$ touch foo{1,2,3,4,5}.txt
    
    	$ ls
    	foo1.txt  foo2.txt  foo3.txt  foo4.txt  foo5.txt
  • The strings inside the braces can contain one or more characters
    	$ touch {a,ab,abc}.txt
    
    	$ ls
    	abc.txt  ab.txt  a.txt
  • Shell Script Control Structures

    The if ... then ... Construct

    test

    The test Operators

    Using test in Scripts

    The if ... then ... else ... Construct

    The if ... then ... elif ... Construct

    for ... in ... Loops