Learning just enough to be dangerous
Marek Šuppa
Ondrej Jariabka
Adrián Matejov
Each lab is worth about 5% of your final grade (there will be some bonuses)
You can get at most 50% of the grade in the labs
The other 50% comes from the test at the lectures with Dr. Janacek
Each lab is worth about 5% of your final grade (there will be some bonuses)
You can get at most 50% of the grade in the labs
The other 50% comes from the test at the lectures with Dr. Janacek
At least 60% is necessary for the (passing) E grade
Labs every week, 1630 in H6/some-other-new-room (or online)
Short (40 minute) lecture on some topic + various labs
Labs every week, 1630 in H6/some-other-new-room (or online)
Short (40 minute) lecture on some topic + various labs
We'll try to organize via MS Teams (of all places...)
Labs every week, 1630 in H6/some-other-new-room (or online)
Short (40 minute) lecture on some topic + various labs
We'll try to organize via MS Teams (of all places...)
Labs will take place on a remote server, so nothing to install
Labs every week, 1630 in H6/some-other-new-room (or online)
Short (40 minute) lecture on some topic + various labs
We'll try to organize via MS Teams (of all places...)
Labs will take place on a remote server, so nothing to install
You will have 18 hours to finish the labs
Labs every week, 1630 in H6/some-other-new-room (or online)
Short (40 minute) lecture on some topic + various labs
We'll try to organize via MS Teams (of all places...)
Labs will take place on a remote server, so nothing to install
You will have 18 hours to finish the labs
Every additional hour after the deadline compounds the decrease of points you can get by 1%
Well, the goal is to:
Well, the goal is to:
Well, the goal is to:
show you the cool things (your) computers are capable of
get you acquainted with UNIX-like operating systems, the tradition which powers much of modern computing
Well, the goal is to:
show you the cool things (your) computers are capable of
get you acquainted with UNIX-like operating systems, the tradition which powers much of modern computing
be a fun break from other classes
Well, the goal is to:
show you the cool things (your) computers are capable of
get you acquainted with UNIX-like operating systems, the tradition which powers much of modern computing
be a fun break from other classes
What you are studying is non-trivial already. It is not our job to punish you for choosing to do that but to give you some practical skills that will let you apply it straight away.
aka the LLM Policy
As in, why even learn about (Linux) Command Line in 2023,
when I want to be a Data Scientist!?!
Interaction with computers was done in various ways:
Interaction with computers was done in various ways:
lights and switches
numerical displays
textual displays and terminals
Interaction with computers was done in various ways:
lights and switches
numerical displays
textual displays and terminals
graphical display
mouse, touchpad, tablet, touch screen
Interaction with computers was done in various ways:
lights and switches
numerical displays
textual displays and terminals
graphical display
mouse, touchpad, tablet, touch screen
voice control, Virtual Reality...?
Ken Thompson (sitting) and Dennis Ritchie working together at a PDP-11
one of the first operating systems
Ken Thompson, Dennis Ritchie (and friends) in 1969
later (1973) re-written in C
The freedom to run the program as you wish, for any purpose.
The freedom to study how the program works, and change it so it does your computing as you wish.
The freedom to redistribute copies so you can help your neighbor.
The freedom to distribute copies of your modified versions to others.
Note that free does not necessarily need to mean free of charge.
Linus Torvalds, 21 year old student of the University of Helsinki
Released Linux (kernel) in 1991
Linux kernel + GNU = Linux (GNU/Linux system)
ssh
"Secure Shell" $ ssh user@remote.computer.com
ssh
"Secure Shell" $ ssh user@remote.computer.com
Needs to be executed from a terminal/console application (aka "terminal emulator")
Starts an interpreter (shell) on the remote computer and connects the terminal/console to it
ssh
"Secure Shell" $ ssh user@remote.computer.com
Needs to be executed from a terminal/console application (aka "terminal emulator")
Starts an interpreter (shell) on the remote computer and connects the terminal/console to it
user@hostname:~$
user
will be replaced with the user you run this shell as
hostname
will be replaced with the name of the computer this shell is running on
user@hostname:~$
user
will be replaced with the user you run this shell as
hostname
will be replaced with the name of the computer this shell is running on
$
(and potentially #
in case of administrator accounts) denotes a place to enter commands
user@hostname:~$
user
will be replaced with the user you run this shell as
hostname
will be replaced with the name of the computer this shell is running on
$
(and potentially #
in case of administrator accounts) denotes a place to enter commands
user@hostname:~$ command [ENTER]
(the [ENTER]
here means literally pressing the Enter key on the keyboard)
The standard command has the following structure
user@hostname:~$ command [flags] [arguments]
The standard command has the following structure
user@hostname:~$ command [flags] [arguments]
such as for instance
user@hostname:~$ command -x --longflag
where -x
and --longflag
are flags. (Long flags start with two dashes --
)
The standard command has the following structure
user@hostname:~$ command [flags] [arguments]
such as for instance
user@hostname:~$ command -x --longflag
where -x
and --longflag
are flags. (Long flags start with two dashes --
)
Flags (or options) can be either boolean (present/not-present) or with some value
user@hostname:~$ command -x 123user@hostname:~$ command --longflag somestring
cal
command prints out a calendaruser@hostname:~$ cal
cal
command prints out a calendaruser@hostname:~$ cal
-3
flaguser@hostname:~$ cal -3
cal
command prints out a calendaruser@hostname:~$ cal
-3
flaguser@hostname:~$ cal -3
-n
flaguser@hostname:~$ cal -n 6
cal
command prints out a calendaruser@hostname:~$ cal
-3
flaguser@hostname:~$ cal -3
-n
flaguser@hostname:~$ cal -n 6
user@hostname:~$ cal 2022
cal
command prints out a calendaruser@hostname:~$ cal
-3
flaguser@hostname:~$ cal -3
-n
flaguser@hostname:~$ cal -n 6
user@hostname:~$ cal 2022
user@hostname:~$ cal -n 6 2022
date
uname -a
-a
means "all information")man command
command
q
w
who
whoami
pwd
cd directory
directory
cd ..
ls
exit
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
Number + Return | Go to specific slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |