ExperTeach Networking Logo

Linux for Advanced Learners

The Linux Toolbox

ExperTeach Networking Logo

The central tool for every Linux administrator is the shell. It is the ubiquitous command input line that works even when there is no graphical user interface. It also offers the most powerful command set in graphical environments. However, Linux newcomers in particular only use the potential of the shell to a limited extent. For example, procedures that always run in the same way can be combined into a simple script in no time at all. Starting with very simple examples, you will get a sound introduction to how you can create simple solutions yourself, e.g. to query system information from the running machine, and develop flexible scripts.

What cannot be retrieved from the machine can be passed into the scripts by the user using various methods. A powerful language syntax makes the shell a very interesting environment for system programming. Whether it is about evaluating states or the content of variables, whether processes are to be repeated in loops - the shell can keep up with any common scripting language. It is available on every Linux system without being dependent on version numbers to the same extent as the highly acclaimed market leaders. This is why Shell is still the most popular tool for full-blown hackers.

Because many Linux systems are now also graphical desktop systems, this course also provides a comprehensive overview of shell scripting with graphical front-ends. This part is optional for a three-day course, which definitely needs to cover the basics of shell scripting, and is dependent on the rest of the course progression.

The course, together with Linux Administration II, prepares you for the LPI 102 exam.

Course Contents

  • General information about shells
  • From command to executable script
  • Variables
  • What variables are currently available?
  • What can you do with them?
  • System variables
  • Creating variables
  • Automatic variables
  • Scope of variables
  • How do variables get into the script?
  • Declare
  • Transfer
  • Read
  • Query values from the system
  • What don't you need to program?
  • Dynamic directories and their treasures
  • Parsing program output
  • Shell programming logic
  • Tests and error levels
  • If-then-else
  • Single-line ifs
  • case
  • Accelerators: Loops
  • for
  • while/until
  • Getting out of loops
  • Shell functions
  • Declaring functions
  • Local variables
  • Swapping shell libraries
  • Arrays
  • Arrays and lists
  • Declaration and use
  • Interaction with shell scripts
  • Dialog
  • Whiptail
  • Graphical dialogs
  • kdialog
  • zenity and yad
  • Regular expressions
  • Overview
  • Curly braces
  • Character classes
  • The crowbar: grep
  • Other tools/facilitators
  • sed
  • awk
  • Scripting into the network with ssh
  • Remote login and remote administration
  • Mass administration of computers
Request in-house training now

Target Group

This course is suitable for you if you want to make your work on the Linux system more efficient and sustainable.

This course is only partially a programming course. Programming here is a means by which we achieve system administration goals.

Knowledge Prerequisites

Participants should have a solid knowledge of Linux at the level of the LPI 101 exam, as can be acquired in the courses Linux Fundamentals and Linux Administration I.

General networking basics are recommended.

Programming knowledge is generally not required for this course. Although the syntax of the command line interpreter allows programming, many people believe that it is not a fully-fledged programming language. While this course targets a problem, you will learn the tools of the shell - yes-no queries, conditionals or multiple case distinctions - in an easy and understandable way.

1 Allgemeines über Shells
1.1 Shells und Shellskripte
1.2 Shelltypen
1.3 Die Bourne-Again-Shell
1.3.1 Das Wichtigste
1.3.2 Login-Shells und interaktive Shells
1.3.3 Dauerhafte Konfigurationsänderungen
1.3.4 Tastatur-Belegung und Abkürzungen
 
2 Shellskripte
2.1 Einleitung
2.2 Aufruf von Shellskripten
2.3 Aufbau von Shellskripten
2.4 Shellskripte planen
2.5 Fehlertypen
2.6 Fehlererkennung
 
3 Die Shell als Programmiersprache
3.1 Variable
3.2 Arithmetische Ausdrücke
3.3 Bearbeitung von Kommandos
3.4 Kontrollstrukturen
3.4.1 Überblick
3.4.2 Der Rückgabewert von Programmen als Steuergröße
3.4.3 Alternativen, Bedingungen und Fallunterscheidungen
3.4.4 Schleifen
3.4.5 Schleifenunterbrechung
3.5 Shellfunktionen
3.6 Das Kommando exec
 
4 Praktische Shellskripte
4.1 Shellprogrammierung in der Praxis
4.2 Rund um die Benutzerdatenbank
4.3 Dateioperationen
4.4 Protokolldateien
4.5 Systemadministration
 
5 Interaktive Shellskripte
5.1 Einleitung
5.2 Das Kommando read
5.3 Menüauswahl mit select
5.4 »Grafische« Oberflächen mit dialog
 
6 Der Stromeditor sed
6.1 Einsatzgebiete
6.2 Adressierung
6.3 sed-Anweisungen
6.3.1 Ausgeben und Löschen von Zeilen
6.3.2 Einfügen und Verändern
6.3.3 Zeichen-Transformationen
6.3.4 Suchen und Ersetzen
6.4 sed in der Praxis
 
7 Die awk-Programmiersprache
7.1 Was ist awk?
7.2 awk-Programme
7.3 Ausdrücke und Variable
7.4 awk in der Praxis
 
8 SQL
8.1 Warum SQL?
8.1.1 Überblick
8.1.2 SQL einsetzen
8.2 Tabellen definieren
8.3 Datenmanipulation und Abfragen
8.4 Relationen
8.5 Praktische Beispiele
 
9 Zeitgesteuerte Vorgänge – at und cron
9.1 Allgemeines 9.2 Einmalige Ausführung von Kommandos
9.2.1 at und batch
9.2.2 at-Hilfsprogramme
9.2.3 Zugangskontrolle
9.3 Wiederholte Ausführung von Kommandos
9.3.1 Aufgabenlisten für Benutzer
9.3.2 Systemweite Aufgabenlisten
9.3.3 Zugangskontrolle
9.3.4 Das Kommando crontab
9.3.5 Anacron
 
10 Lokalisierung und Internationalisierung
10.1 Überblick
10.2 Zeichencodierungen
10.3 Spracheneinstellung unter Linux
10.4 Lokalisierungs-Einstellungen
10.5 Zeitzonen
 
11 Die Grafikoberfläche X11
11.1 Grundlagen
11.2 X11 konfigurieren
11.3 Displaymanager
11.3.1 Grundlegendes zum Starten von X
11.3.2 Der Displaymanager LightDM
11.3.3 Andere Displaymanager
11.4 Informationen anzeigen
11.5 Der Schriftenserver
11.6 Fernzugriff und Zugriffskontrolle
 
12 Linux für Behinderte
12.1 Einführung
12.2 Tastatur, Maus und Joystick
12.3 Die Bildschirmdarstellung
 
A Musterlösungen
 
B Reguläre Ausdrücke
B.1 Überblick
B.2 Extras
 
C LPIC-1-Zertifizierung
C.1 Überblick
C.2 Prüfung LPI-102
C.3 LPI-Prüfungsziele in dieser Schulungsunterlage
 
D Kommando-Index
 
Index

Classroom training

Do you prefer the classic training method? A course in one of our Training Centers, with a competent trainer and the direct exchange between all course participants? Then you should book one of our classroom training dates!

Hybrid training

Hybrid training means that online participants can additionally attend a classroom course. The dynamics of a real seminar are maintained, and the online participants are able to benefit from that. Online participants of a hybrid course use a collaboration platform, such as WebEx Training Center or Saba Meeting. To do this, a PC with browser and Internet access is required, as well as a headset and ideally a Web cam. In the seminar room, we use specially developed and customized audio- and video-technologies. This makes sure that the communication between all persons involved works in a convenient and fault-free way.

Online training

You wish to attend a course in online mode? We offer you online course dates for this course topic. To attend these seminars, you need to have a PC with Internet access (minimum data rate 1Mbps), a headset when working via VoIP and optionally a camera. For further information and technical recommendations, please refer to.

Tailor-made courses

You need a special course for your team? In addition to our standard offer, we will also support you in creating your customized courses, which precisely meet your individual demands. We will be glad to consult you and create an individual offer for you.
Request in-house training now
PDF SymbolYou can find the complete description of this course with dates and prices ready for download at as PDF.

The central tool for every Linux administrator is the shell. It is the ubiquitous command input line that works even when there is no graphical user interface. It also offers the most powerful command set in graphical environments. However, Linux newcomers in particular only use the potential of the shell to a limited extent. For example, procedures that always run in the same way can be combined into a simple script in no time at all. Starting with very simple examples, you will get a sound introduction to how you can create simple solutions yourself, e.g. to query system information from the running machine, and develop flexible scripts.

What cannot be retrieved from the machine can be passed into the scripts by the user using various methods. A powerful language syntax makes the shell a very interesting environment for system programming. Whether it is about evaluating states or the content of variables, whether processes are to be repeated in loops - the shell can keep up with any common scripting language. It is available on every Linux system without being dependent on version numbers to the same extent as the highly acclaimed market leaders. This is why Shell is still the most popular tool for full-blown hackers.

Because many Linux systems are now also graphical desktop systems, this course also provides a comprehensive overview of shell scripting with graphical front-ends. This part is optional for a three-day course, which definitely needs to cover the basics of shell scripting, and is dependent on the rest of the course progression.

The course, together with Linux Administration II, prepares you for the LPI 102 exam.

Course Contents

  • General information about shells
  • From command to executable script
  • Variables
  • What variables are currently available?
  • What can you do with them?
  • System variables
  • Creating variables
  • Automatic variables
  • Scope of variables
  • How do variables get into the script?
  • Declare
  • Transfer
  • Read
  • Query values from the system
  • What don't you need to program?
  • Dynamic directories and their treasures
  • Parsing program output
  • Shell programming logic
  • Tests and error levels
  • If-then-else
  • Single-line ifs
  • case
  • Accelerators: Loops
  • for
  • while/until
  • Getting out of loops
  • Shell functions
  • Declaring functions
  • Local variables
  • Swapping shell libraries
  • Arrays
  • Arrays and lists
  • Declaration and use
  • Interaction with shell scripts
  • Dialog
  • Whiptail
  • Graphical dialogs
  • kdialog
  • zenity and yad
  • Regular expressions
  • Overview
  • Curly braces
  • Character classes
  • The crowbar: grep
  • Other tools/facilitators
  • sed
  • awk
  • Scripting into the network with ssh
  • Remote login and remote administration
  • Mass administration of computers
Request in-house training now

Target Group

This course is suitable for you if you want to make your work on the Linux system more efficient and sustainable.

This course is only partially a programming course. Programming here is a means by which we achieve system administration goals.

Knowledge Prerequisites

Participants should have a solid knowledge of Linux at the level of the LPI 101 exam, as can be acquired in the courses Linux Fundamentals and Linux Administration I.

General networking basics are recommended.

Programming knowledge is generally not required for this course. Although the syntax of the command line interpreter allows programming, many people believe that it is not a fully-fledged programming language. While this course targets a problem, you will learn the tools of the shell - yes-no queries, conditionals or multiple case distinctions - in an easy and understandable way.

1 Allgemeines über Shells
1.1 Shells und Shellskripte
1.2 Shelltypen
1.3 Die Bourne-Again-Shell
1.3.1 Das Wichtigste
1.3.2 Login-Shells und interaktive Shells
1.3.3 Dauerhafte Konfigurationsänderungen
1.3.4 Tastatur-Belegung und Abkürzungen
 
2 Shellskripte
2.1 Einleitung
2.2 Aufruf von Shellskripten
2.3 Aufbau von Shellskripten
2.4 Shellskripte planen
2.5 Fehlertypen
2.6 Fehlererkennung
 
3 Die Shell als Programmiersprache
3.1 Variable
3.2 Arithmetische Ausdrücke
3.3 Bearbeitung von Kommandos
3.4 Kontrollstrukturen
3.4.1 Überblick
3.4.2 Der Rückgabewert von Programmen als Steuergröße
3.4.3 Alternativen, Bedingungen und Fallunterscheidungen
3.4.4 Schleifen
3.4.5 Schleifenunterbrechung
3.5 Shellfunktionen
3.6 Das Kommando exec
 
4 Praktische Shellskripte
4.1 Shellprogrammierung in der Praxis
4.2 Rund um die Benutzerdatenbank
4.3 Dateioperationen
4.4 Protokolldateien
4.5 Systemadministration
 
5 Interaktive Shellskripte
5.1 Einleitung
5.2 Das Kommando read
5.3 Menüauswahl mit select
5.4 »Grafische« Oberflächen mit dialog
 
6 Der Stromeditor sed
6.1 Einsatzgebiete
6.2 Adressierung
6.3 sed-Anweisungen
6.3.1 Ausgeben und Löschen von Zeilen
6.3.2 Einfügen und Verändern
6.3.3 Zeichen-Transformationen
6.3.4 Suchen und Ersetzen
6.4 sed in der Praxis
 
7 Die awk-Programmiersprache
7.1 Was ist awk?
7.2 awk-Programme
7.3 Ausdrücke und Variable
7.4 awk in der Praxis
 
8 SQL
8.1 Warum SQL?
8.1.1 Überblick
8.1.2 SQL einsetzen
8.2 Tabellen definieren
8.3 Datenmanipulation und Abfragen
8.4 Relationen
8.5 Praktische Beispiele
 
9 Zeitgesteuerte Vorgänge – at und cron
9.1 Allgemeines 9.2 Einmalige Ausführung von Kommandos
9.2.1 at und batch
9.2.2 at-Hilfsprogramme
9.2.3 Zugangskontrolle
9.3 Wiederholte Ausführung von Kommandos
9.3.1 Aufgabenlisten für Benutzer
9.3.2 Systemweite Aufgabenlisten
9.3.3 Zugangskontrolle
9.3.4 Das Kommando crontab
9.3.5 Anacron
 
10 Lokalisierung und Internationalisierung
10.1 Überblick
10.2 Zeichencodierungen
10.3 Spracheneinstellung unter Linux
10.4 Lokalisierungs-Einstellungen
10.5 Zeitzonen
 
11 Die Grafikoberfläche X11
11.1 Grundlagen
11.2 X11 konfigurieren
11.3 Displaymanager
11.3.1 Grundlegendes zum Starten von X
11.3.2 Der Displaymanager LightDM
11.3.3 Andere Displaymanager
11.4 Informationen anzeigen
11.5 Der Schriftenserver
11.6 Fernzugriff und Zugriffskontrolle
 
12 Linux für Behinderte
12.1 Einführung
12.2 Tastatur, Maus und Joystick
12.3 Die Bildschirmdarstellung
 
A Musterlösungen
 
B Reguläre Ausdrücke
B.1 Überblick
B.2 Extras
 
C LPIC-1-Zertifizierung
C.1 Überblick
C.2 Prüfung LPI-102
C.3 LPI-Prüfungsziele in dieser Schulungsunterlage
 
D Kommando-Index
 
Index

Classroom training

Do you prefer the classic training method? A course in one of our Training Centers, with a competent trainer and the direct exchange between all course participants? Then you should book one of our classroom training dates!

Hybrid training

Hybrid training means that online participants can additionally attend a classroom course. The dynamics of a real seminar are maintained, and the online participants are able to benefit from that. Online participants of a hybrid course use a collaboration platform, such as WebEx Training Center or Saba Meeting. To do this, a PC with browser and Internet access is required, as well as a headset and ideally a Web cam. In the seminar room, we use specially developed and customized audio- and video-technologies. This makes sure that the communication between all persons involved works in a convenient and fault-free way.

Online training

You wish to attend a course in online mode? We offer you online course dates for this course topic. To attend these seminars, you need to have a PC with Internet access (minimum data rate 1Mbps), a headset when working via VoIP and optionally a camera. For further information and technical recommendations, please refer to.

Tailor-made courses

You need a special course for your team? In addition to our standard offer, we will also support you in creating your customized courses, which precisely meet your individual demands. We will be glad to consult you and create an individual offer for you.
Request in-house training now

PDF SymbolYou can find the complete description of this course with dates and prices ready for download at as PDF.