The course freely follows the Unix-like systems course. In the first part, basics of unix shell, files, processes and text processing on unix-like operating systems are briefly reviewed. The main contents of the course, however, is then shell programming (so-called scripting, primarily Bash shell) and its utilization in stream text processing using essential software utilities bundled with unix-like operating systems, mainly the grep, sed and awk tools. In the end, national specifics (localization) and specifics of Linux, GNU and Apple Mac OS X systems are also mentioned. Everything is intensively experienced in seminars, with strong hands-on approach, in linux operating system and Bash shell. 1. Basic principles of unix-like operating systems, introduction to shell: Command line and interpreter (shell), manual pages and shell help, files and directories, (traditional unix) access rights, processes and their manipulation. Job control in shell, file and directory names expansion, aliases, program input and output, pipe. 2. Basics of text processing: Text editing: editors Vi and Emacs, basic utilities, regular expressions and grep, basics of sed and awk. 3. Shell (Bash) programming: Commands, variables (parameters), conditionals, loops, integer arithmetic, command grouping, functions, script. 4. Shell (Bash) programming: Shell invocation, quoting, special variables, arrays, expansion ({}, of variables and paramters, words, path), command substition, further commands. 5. Text processing: stream editor sed: Editation process, edit command, function, using shell variables. 6. Text processing: programming language awk: Line field, pattern and action, variables, arrays, operators, conditionals, loops, functions. 7. Localization (Czech): Localization and localization shell variables, text coding and end of lines. 8. Specifics against Unix (POSIX standard): Linux, GNU and Apple Mac OS X specifics (desktop and terminal, command line, help, file system, system of processes, grep, Bash, sed, awk, localization).
|
-
Albing C., Vossen JP. (2017). bash Cookbook: Solutions and Examples for Bash Users (2nd edition). O'Reilly Media.
-
Blum, R., Bresnahan, C. (2015). Linux Command Line and Shell Scripting Bible, 3rd Edition. Wiley.
-
Čada O. Mac OS X Shell krok za krokem.. Grafika Publishing s.r.o.
-
Forst L. (2010). Shell v příkladech aneb aby váš unix skvěle shell. Matfyzpress.
-
Herold H. (2004). awk & sed: Příručka pro dávkové zpracování textu.. Computer Press.
-
kolektiv. (2008). Linux: Dokumentační projekt, 4. aktualizované vydání.. Computer Press.
-
Michael R. K. (2008). Mastering Unix Shell Scripting: Bash, Bourne, and Korn Shell Scripting for Programmers, System Administrators, and UNIX Gurus. Wiley.
-
Newham C. (2005). Learning the bash Shell: Unix Shell Programming (In a Nutshell). O'Reilly Media.
-
Ray D. S., Ray Eric J. (2009). Unix: podrobný průvodce. Grada.
-
Robbins A. (2005). Unix in a Nutshell, Fourth Edition. O'Reilly Media.
-
Sobell, M. G., Helmke, M. (2017). A Practical Guide to Linux Commands, Editors, and Shell Programming (4th Edition). Addison-Wesley.
-
Sobell M. G. (2007). Mistrovství v Linuxu: Příkazový řádek, shell, programování. Computer Press.
-
Vychodil, V. (2003). Linux - Příručka českého uživatele systému. Computer Press.
|