Links zu Shells

Die Shell (nach Wosch (dt.) Außenhaut, Randzone, Ummantelung), ist die historisch Zentrale Benutzeroberfläche für Unix-artige Systeme. Es handelt sich hierbei üblicherweise um eine reine Text-Kommunikation, zwischen dem Rechner und Benutzer.

Im CIP wird per Default Bash benutzt, aber man kann auch je nach Interesse andere Implementierungen verwenden:

Die Shell ist zunächst für viele etwas unangenehm, unter anderem weil man sich nicht immer sicher ist was man macht. Nach er initialen Umgewöhnung, d.h. sobald man versteht wie man von sich aus in der neuen Umgebung zurecht kommt sollte es einem wesentlich einfacher fallen. Diese Links könnten bis dahin helfen:

Hillfreiche Tastaturkürzel (Bash)

Ctrl-A
Springe an den Anfang einer Zeile.
Ctrl-E
Springe an das Ende einer Zeile.
Ctrl-R
Erlaubt es schnell nach vergangenen Befehlen zu suche. Wiederhole Ctrl-R um die Suche zu wiederholen.
Ctrl-U
Lösche die derzeitige Eingabe.
Ctrl-K
Lösche die derzeitige Eingabe bis zum Ende der Zeile.
Ctrl-L
Lösche den Inhalt des Bildschirms (ähnlich zu dem Befehl clear).
Ctrl-W
Lösche das letzte Wort.
Alt-F, Alt-B
Bewege dich ein Wort nach vorne/hinten.

Skripte Schreiben

Eine Shell kann interaktiv oder im batch-Modus benutzt werden. Letzteres nennt man Shell Scripting, d.h. dem aufschreiben von Befehlen in einer Datei die dann zusammengefassten werden können zu einem neuen Befehl. Dieses ist oft eine einfache Art und Weise seine Arbeitsumgebung um kleine, hilfreiche Funktionalitäten zu erweitern.

Das lernen von Shell Scripting ist auf keinen Fall ein Bestandteil von SP, aber dennoch eine sehr nützliche Fähigkeit, unabhängig vom Studium. Es gibt meist zwei Geschmacksrichtungen von Shell Scripts:

Allgemein ist aber Vorsicht geboten, da die Shell als Sprache etwas schwammig ist. Bei mehr als 10-20 Zeilen würde ich einem Anfänger raten eine andere Sprache (Python, Perl, Ruby, (Guile) Scheme, Emacs Lisp, ...) zu benutzen, aber selbst erfahrene Nutzer können oft Probleme haben bei mehr als 100-500 Zeilen. Auf jeden Fall ist ein Linter wie ShellCheck zu benutzen.

$Id: shell.html,v 1.6 2023/10/21 10:17:02 oj14ozun Exp $