Introduction to Unix Labs (2018/2019)

Contact

Dates

Description

Rules

  1. Broaden your knowledge about Before Class topic before coming to the class. Most of the activity points are awarded in the discussion related to this topic.
  2. Be curious. If you are not familiar with some command, tool, technology or principle try to learn and understand it on your own. There are tons of tutorials on the Internet and most of the information is in man pages. After that you can validate your knowledge in discussion with me. This is the most efficient way of learning.
  3. To obtain a credit you need to:
    1. Obtain at least 10 points for in class activity. Best strategy is to aim for 1-2 points per class.
    2. Obtain at least 75% points from all scripting tasks.
    3. Propose and implement a useful script which solves some real problem. Optimally write a script for your own usage.

Notes

Follow-up

Homework Submission (Scripting Tasks)

Agenda

Date Schedule
20.2.
22.2.
(Plan)

Before Class

  • Your motivation for UNIX. Who uses UNIX? What are advantages and disadvantages of UNIX? What devices are suitable/not suitable for UNIX? How old is UNIX? What other operating systems do you know? What is github and what is good for?

On Class

  • Labs organization. Motivation. Motivation. Motivation. First touches with UNIX. Environment configuration (shell control/completion/shortcuts, file manager, text editor, PRIMARY and CLIPBOARD selections). Working with text files. Running a program. File System Hierarchy.
  • Basic shell commands (man, w, who, echo, apropos). Shell commands for working with file system hierarchy (ls, cd, cat, mkdir, rmdir, rm, cp, mv, touch, pwd, tree). Shell commands making output readable (head, tail, more, less).
  • How-to submit a homework via git. Basic git tutorial. Setting github notification when homework feedback is created. Putty configuration. Windows Subsystem for Linux (WSL).

Scripting Tasks

  • [1 point] Create github repository named intro19 and send me email with it’s link for cloning. Make the repository private and add github user asch to the contributors.
  • [01/setup.txt] [1 point] Learn more about environment configuration and configure your system for your best needs. I.e. tweak your UNIX computer the way you like it. Write down a text file (80 characters per line, couple of paragraphs) what your setup is (desktop environment, text editor, file manager, internet browser and other favourite applications, tips and tricks).
  • [01/print.sh] [1 point] Write a command for listing files in the current directory sorted by date of modification.

Resources

XKCD