PřF:C2110 UNIX and Programming - Course Information
C2110 UNIX Operating System and Programming Basics
Faculty of ScienceAutumn 2024
- Extent and Intensity
- 0/2/0. 2 credit(s) (plus extra credits for completion). Type of Completion: k (colloquium).
In-person direct teaching - Teacher(s)
- RNDr. Petr Kulhánek, Ph.D. (lecturer)
Ing. Tomáš Trnka, Ph.D. (lecturer)
Mgr. Július Zemaník (seminar tutor)
Bc. Lucia Iľkovičová (seminar tutor) - Guaranteed by
- RNDr. Petr Kulhánek, Ph.D.
National Centre for Biomolecular Research – Faculty of Science
Contact Person: RNDr. Petr Kulhánek, Ph.D.
Supplier department: National Centre for Biomolecular Research – Faculty of Science - Timetable of Seminar Groups
- C2110/01: Mon 12:00–13:50 C04/118, P. Kulhánek, J. Zemaník
C2110/02: Tue 8:00–9:50 C04/118, L. Iľkovičová, P. Kulhánek
C2110/03: Tue 15:00–16:50 C04/118, P. Kulhánek, J. Zemaník - Prerequisites
- Basic work with PC
- Course Enrolment Limitations
- The course is also offered to the students of the fields other than those the course is directly associated with.
- fields of study / plans the course is directly associated with
- there are 30 fields of study the course is directly associated with, display
- Course objectives
- The course provides a basic overview of Linux (Unix) operating system commands and their combination into more complex structures using bash scripting. Additionally, the course focuses on fundamental work with scripting languages AWK and Gnuplot, which can be used for analyzing data from experimental measurements or computer simulations. These skills are crucial for molecular modelling, chemoinformatics, bioinformatics, and the efficient utilization of supercomputing infrastructure. The course also offers foundational knowledge in algorithmization and programming, providing a solid base for further studies in compiled languages (C/C++, Fortran) or interpreted languages (Python, R).
- Learning outcomes
- After completing the course, the student will * know the basic commands of Linux operating systems * be able to combine commands into more complex constructions using scripting * be able to create scripts in AWK and Gnuplot programming languages * perform automated analysis of results from experiments and computer simulations
- Syllabus
- 1. Teaching organization * Course focus * WOLF cluster * Local login and remote access
- 2. Linux as a desktop environment * Standard and scientific applications * Command documentation * Kerberos
- 3. File system, creating and deleting directories, copying, renaming, and deleting files * Remote file transfer, hashing functions and their uses * Virtualization
- 4. Processes, command and program execution, signals * Process communication with the environment, redirection, pipes
- 5. Programming basics, algorithmization, data structures, arithmetic and logical operations * Text editors
- 6. Programs vs scripts * Bash: interactive vs non-interactive mode, running scripts * Bash: setting and getting the value of a variable, interpreting strings, integer operations, variables and processes
- 7. Bash: input and output * Bash: decision making, conditions
- 8. Bash: while/until loop, block nesting * Syntax and logic errors, error finding, debugging
- 9. Gnuplot: interactive and non-interactive execution, plot command * Gnuplot: scripts, terminals
- 10. Bash: loop for ... in * Bash: loops and redirection * Bash: redirecting input in scripts
- 11. AWK basics * AWK: variables
- 12. AWK: Logical Operations * AWK: Cycles, Arrays
- 13. Practice (bash+gnuplot+awk)
- 14. Data compression and archives * Compiling programs from source code
- Literature
- Kameník, P. Příkazový řádek v Linuxu: praktická řešení, 2. vydání.; Computer Press: Brno, 2021.
- HAHN, Harley and Peter NORTON. Průvodce UNIXEM od Petera Nortona : Jak komunikovat s UNIXEM, jak UNIX ukládá a zobrazuje informace, používání unixového systému souborů, práce s editorem vi : Peter Norton's Guide to UNIX (Orig.). 1.vyd. Brno: UNIS, 1993, XXIV, 562. info
- BRANDEJS, Michal. UNIX - Linux : praktický průvodce. 1. vyd. Praha: Grada, 1996, 340 s. ISBN 8071691704. info
- PETRLÍK, Lukáš. Jemný úvod do systému UNIX. 1. vyd. České Budějovice: Kopp, 1995, 189 s. ISBN 80-85828-28-6. info
- Teaching methods
- lectures, exercising practical examples, class discussion
- Assessment methods
- Participation in seminars is required (two excused absences are allowed). Three tests (3 x 20 points) will occur during the semester. The student will elaborate an algorithm of a task in the form of a flow chart (10 points). The final test (50 points) will occur during the examination period. It will be followed by a task to write a script (30 points) according to written instructions. At least 110 points are required to pass the course.
- Language of instruction
- Czech
- Follow-Up Courses
- C2115 Practical Introduction to Supercomputing
- C2150 Information processing and visualization in chemistry and biochemistry
- C2160 C Programming for Chemists
- C3220 Advanced C Programming for Chemists
- C7800 Introduction to Molecular Modelling - Exercise
- C8856 Advanced Molecular Modelling Methods - Excercise
- Study support
- https://is.muni.cz/auth/el/sci/podzim2024/C2110/index.qwarp
- Further Comments
- Study Materials
The course is taught annually. - Teacher's information
- This course is not given in English in PS 2024.
- Enrolment Statistics (recent)
- Permalink: https://is.muni.cz/course/sci/autumn2024/C2110