Don't be afraid of the command line! It is a friendly and powerful tool, allowing you to process large data and automate tasks. Practically identical is command line also in Apple macOS, BSD and other UNIX-based systems, not only in Linux. The course is designed for total beginners as well as intermediate advanced students. The only requirement is an interest (or need) to work in command line, typically on Linux computing servers.
Knowledge of Linux/UNIX is useful, e.g. for working with large molecular and other data on computing clusters like MetaCentrum. It is a service provided by CESNET allowing access to huge computational capacity, which is readily available for all students and employees of Czech academic institutions to process their data. You can immediately use skills learned during the course. The course contains theoretical introduction as well as plenty of practical examples and exercises.
The course will be taught 4 days.
Information is continuously updated in SIS. Schedules are also in SIS. The course will be taught in lecture hall OŽP B12 (1st mezzanine, Benátská 2, Prague 2) from January 19 to 22, 2027, from 9:00 AM to ca. 3:30 PM (with enough breaks). I'd be glad if participants could fill a short questionnaire which will help me with preparation of the course and communication with participants.
The course will be a combination of shorter talks, followed by independent work of students, and room for questions and consultations, etc. Details will be updated according to the situation prior the course.
Syllabus
Preliminary list of topics and schedule (might be edited according to wishes of participants):
Day 1
- Introduction: learning machine, what is a "UNIX", licenses
- Linux in general, distributions and their differences
- Disks and file systems
- Types of users, directory structure
- Files and directories, permissions
- Text in UN*X (encodings, line endings)
- BASH and other shells, screen
- SSH (secure shell), SSH keys
Day 2
- Working with directories, archives, searching
- Globbing, wildcards, quoting
- Variables, input/output redirection, command chaining
- Hardware information, processes
- Network, parallelization, timing
- Reading and extracting text, AWK, text manipulation
Day 3
- Compressed text, file comparisons
- Editors
- Regular expressions
- BASH scripting: script skeleton, variables, functions, reading input
- Branching, loops, practice tasks
- Package managers, compilation, Java
- Windows applications (Wine), scientific applications, games
- Data servers and data transfer (SFTP, …)
Day 4
- MetaCentrum: information, usage, tasks, graphical connection, more services
- Containers: Singularity/Apptainer
- Local language models: Ollama
- Git: principles, basics, tasks
- Administration
- Wrap-up, further resources
Exams will take place last day, or any time in the future according to individual arrangement. There will also be room for consultations of specific issues of individual participation.
For the course, you need any computer with Linux – Linux-only machine, dualboot, virtualisation (image for VirtualBox will be available), or Cygwin, or Linux subsystem in Windows 11, it doesn’t matter. Or another UNIX (osX and so on.). There will be a training server where we will connect to. It can be enough just to use Putty and log in from Windows to this server, but it won’t be possible to do all the exercises on the server.