Kaisa_2012_3_photo by Veikko Somerpuro

SHELL SCRIPTING AKA LINUX FUNDAMENTALS (2-4OP)

The course is about serious BASH scripting and using the traditional GNU command line tools (such as cat cut tr grep find etc).

NOTE. The course is not about fundamentals of Linux. Whatever that would be, digging into kernel and compiling drivers.

In this sense, the course name can be explained as follows. It's "UNIX fundamentals", but UNIX is registered trademark and whatnot, so we were scared to use that name. UNIX has a philosophy: "small programs that can be strung together through a command line interpreter using pipes". That can is one fundamental of UNIX, and that's what we will be doing: combining the small programs into greatness. In this process, BASH is just a tool we choose to use.

So if you think you're entering a course about Linux administration, you're not. There's another course for that.

Thank you & welcome!

Enrol

Material

The plan is to start doing each week's exercises at home, and then come to PAJA for asking questions about where you're stuck. First week there is no DL for tasks but it is good to start working on the first weeks tasks and be one week ahead.

PAJA is in B221 on Tuesdays from 10:00 - 12:00.

Link to materials https://moodle.helsinki.fi/course/view.php?id=26039

Conduct of the course

No lectures. Students are led through a series of programming sessions aimed to familiarize shell scripting and the most common utility programs. The course is aimed for students who are previously unfamiliar with or who need a refresher of the shell environment. The goal is to learn basic and advanced scripting skills and understand the program design philosophy of Linux and other UN*X-like operating systems. No separate exams.

Description

For students from degree programmes in Computer Science. Available for students from other degree programmes if prerequisites have been met.

This course does not have prerequisites, but courses on programming is recommended.

Students are led through a series of programming sessions aimed to familiarize shell scripting and the most common utility programs. The course is aimed for students who are previously unfamiliar with or who need a refresher of the shell environment. The goal is to learn basic and advanced scripting skills and understand the program design philosophy of Linux and other UN*X-like operating systems.

The recommended time for completion may be, e.g., after certain relevant courses have been completed.

The course is offered every year, in the 2nd teaching period.

The course is about serious BASH scripting and using the traditional GNU command line tools (such as cat cut tr grep find etc).

NOTE. The course is not about fundamentals of Linux. Whatever that would be, digging into kernel and compiling drivers.

In this sense, the course name can be explained as follows. It's "UNIX fundamentals", but UNIX is registered trademark and whatnot, so we were scared to use that name. UNIX has a philosophy: "small programs that can be strung together through a command line interpreter using pipes". That can is one fundamental of UNIX, and that's what we will be doing: combining the small programs into greatness. In this process, BASH is just a tool we choose to use.

So if you think you're entering a course about Linux administration, you're not. There's another course for that.

Thank you & welcome!

Each assignment has its own preparatory material.

Grades are a result from the amount of successfully completed tasks which have been divided into five parts.

  • 2 credits means 4/6 from the tasks done (all the tasks for the first three course parts)
  • 3 credits means 5/6 from the tasks done (all the tasks for the first four course parts)
  • 4 credits means 6/6 from the tasks done (all the tasks for the five course parts)

This is a MOOC course. No lectures. No separate exams.

Samu Varjonen