.. meta:: :description: A Linux introduction for programmers, testers, architects, hardware engineers :keywords: schulung, training, programming, embedded, linux, shell, bash, bourne shell, redirection, console, kill, ps, cat, less, pipe, filesystem, grep, debugging, scripting Linux Basics: A Gentle Introduction =================================== .. contents:: :local: .. sidebar:: .. list-table:: :align: left * * **Duration** * 3 days * * **Language** * Trainer language is English or German * * **Material** * * :doc:`/trainings/material/soup/linux/basics/group` * * **Related** * * :doc:`bash` * :doc:`/trainings/repertoire/linux-prog/sysprog/index` * * **Booking** * :doc:`/trainings/booking` This course is an introduction to the operating system and its strong concepts. By using only the shell (no programming skills needed), we'll learn how the system works. Target Audience --------------- * Programmers * Testers * Support personnel * Hardware engineers * ... or anybody who is interested in understanding the OS Course Outline -------------- * Commandline Basics * Editing a command * Completion: the TAB key * Variables and environment variables * The history buffer * Filesystem * Directories, and path names * File types (symbolic links, device special files, ...) * Current working directory * Commands: ``ls``, ``cp``, ``mv``, ``find`` * Filesystem permissions * Text file handling * ``cat``, ``less``, ``diff``, ``grep`` * Pipes etc. * Standard filedescriptors: ``stdin``, ``stdout``, ``stderr`` * IO redirection * Pipes and named pipes * Tools, and their combination using the pipe * ``gzip``, ``tar``, in combination with e.g. ``find`` * ``ssh`` * Shell scripts * Processes * Basics (including virtual memory) * Shell job control * System calls * ``ps`` * ``top`` * Signals * Scheduling * Networking * Network status reporting (``ss``, and ``netstat``) * ``netcat`` Prerequisites ------------- Programming skills are sure helpful but not required. Interest in and fun with operating systems are required.