1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
Module 1: Using Linux Tools
============================
Module Objectives
----------------------
After successfully completing this module a participant will be able to:
* Understand the design philosophy of \*nix {U}
* Use Linux as their day-to-day operating system {Ap}
* Use the text processing tools such as 'grep', 'tr' {Ap}
* Write and execute (bash) shell scripts {Ap}
* Use a text editor comfortably {Ap}
Suggested Reading
-----------------------
(1) "In the beginning..." by Neal Stephenson
(2) "The Unix Programming Environment" by Kerninghan and Pike
**Initial Session Plan**
+---------+---------------------------------+---------+
| Session | Topic | Duration|
+=========+=================================+=========+
| 1 | Introduction to the Course | 5 mt |
| | | |
| | Historical background and | 10 mts |
| | implications. Why Unix? | |
| | | |
| | Getting started–logging in; *ls,| 10 mts |
| | date, who, cd, mkdir* | |
| | | |
| | Getting help: *apropos, man, | 10 mts |
| | info* | |
| | | |
| | Basic file handling: *cp, mv, | 10 mts |
| | rm* | |
| | | |
| | First session buffer | 5 mts |
+---------+---------------------------------+---------+
| 2 | Command line arguments | 5 mts |
| | | |
| | Basic text processing: *head, | 15 mts |
| | tail, cut, paste* | |
| | | |
| | Shell meta characters | 10 mts |
| | | |
| | Looking at files: *cat, less* | 5 mts |
| | | |
| | Directory structure: *man hier, | 5 mts |
| | ls -l* | |
| | | |
| | Permissions and ownership, | 10 mts |
| | *chmod, chown* | |
+---------+---------------------------------+---------+
| 3 | Redirection and Piping | 10 mts |
| | | |
| | More text processing:*grep, tr* | 10 mts |
| | | |
| | Elementary regex: . ? * ^ $ [ ] | 15 mts |
| | | |
| | One liners: show lines n to m, | 15 mts |
| | show directories | |
+---------+---------------------------------+---------+
| 4 | More text processing: *join, | 10 mts |
| | sprt, uniq* | |
| | | |
| | Generating a word frequency list| 10 mts |
| | | |
| | Basic editing and editors : vim,| 10 mts |
| | scite | |
| | | |
| | Personalising your environment: | 10 mts |
| | *.bashrc, .vimrc* | |
| | | |
| | Subshells and *source~* | 10 mts |
+---------+---------------------------------+---------+
| 5 | More tools: *tar, zip, diff, | 25 mts |
| | cmp, comm* | |
| | | |
| | Environment variables, *set* | 10 mts |
| | | |
| | Writing simple shell scripts | 15 mts |
+---------+---------------------------------+---------+
| 6 | Control structures and | 20 mts |
| | operators in bash | |
| | | |
| | Writing shell scripts | 30 mts |
+---------+---------------------------------+---------+
| 7 | Functions in bash scripts | 20 mts |
| | | |
| | Assessment Test | 30 mts |
+---------+---------------------------------+---------+
*total session time = 350 mts*
*buffer time = 10 mts*
|