CLI unkompliziert erklärt
Cloud-Computing Dienste wie Amazon AWS machen es Unternehmen und Entwicklern immer einfacher, auf eine immer größere Zahl von Netzwerken, Geräten und Systemen zuzugreifen. Allerdings kann die Verwaltung von so vielen unterschiedlichen Bereichen ein ganz schöner Aufwand sein. Als bestes Werkzeug dafür hat sich eine Methode bewährt, die eigentlich schon seit der Erfindung des Computers im Einsatz ist: CLI.
CLI statt der Maus
CLI steht für Command Line Interface (CLI). Auf Deutsch wird das CLI oft als Kommandozeile oder auch als Befehlszeile bezeichnet. Dabei handelt es sich um eine Benutzeroberfläche (User Interface), die textbasierte Befehle eines Nutzers entgegennimmt. CLI wird daher für das Anwenden, Anzeigen und Verwalten von Computerprogrammen verwendet.
Die Kommandozeile wir häufig als schwarzer Kasten mit weißen Textbausteinen dargestellt. Der Nutzer gibt hier entweder selbständig einen Befehl ein oder reagiert auf eine Eingabeaufforderung mit einem Befehl. Das mit dem CLI verwaltete System antwortet darauf mit einer Nachricht, Tabelle oder Liste. Deren Inhalt gibt darüber Auskunft, ob und wie ein System oder Programm ausgeführt wird.
Vereinfacht ausgedrückt, kann man sich die Anwendung des CLI so vorstellen: Statt mit einer Maus auf einer graphischen Benutzeroberfläche wie Microsoft Word zu kommunizieren, gibt der Nutzer die Befehle zur Ausführung oder Verwaltung eines Systems in das CLI in Form einer Nachricht ein. Tatsächlich wurden genau auf diese Weise Computersysteme betrieben, bevor die Maus erfunden und in Computersysteme implementiert wurde.
Die Shell
Auch die CLI oder Kommandozeile wird von einer Software betrieben, der sogenannten Shell oder Kommandozeileninterpreter. Die bekanntesten Shells sind sicherlich die PowerShell für Windows und die Bash für Linux und macOS. Die Shell kann man sich dabei sprichwörtlich als die Hülle eines oder mehrerer Computersysteme vorstellen. Direkt darunter befindet sich der Kern der verschiedenen Betriebssysteme.
Da die Shell die unmittelbare Schicht vor dem Betriebssystem ist, können damit Aktionen durchgeführt werden, die von keinem anderem Schnittstellentypen durchgeführt werden können. So das Verschieben von Daten, das Löschen von gesperrten Daten oder eben das Automatisieren von Systemausführungen. Und genau deshalb ist das CLI bzw. die Shell so wichtig für das moderne Systemmanagement.
Denn mit dem CLI können auch unzählige verschiedene Systeme effektiv gemanagt werden. So können Befehle automatisiert, einfache Fehlersuchen durchgeführt und auch komplizierte Befehlszeilen für die wiederholte Anwendung gespeichert werden. Die CLI stellt damit quasi eine Schnittstelle mit Optionen für den Zugriff auf und die Optimierung von ganzen Systemen dar.
CLI vs GUI
Als Nutzer eines PCs im Alltag verwenden wir inzwischen fast alle eine grafische Benutzeroberflächen (GUI). So zum Beispiel, wenn man Windows, Linux oder Apple nutzt. Theoretisch können viele Aufgaben einer CLI auch von einer solchen GUI übernommen werden, die natürlich per Maus und dank der graphischen Oberfläche deutlich einfach zu bedienen ist.
Als Systemadministrator stößt man damit jedoch schnell an die eigenen Grenzen. Denn erstens können mit einer GUI keine Befehle für die Systemausführung automatisiert werden. Zweitens ist das Managen unzähliger Systeme mit einer GUI ein wahrer Verwaltungsalptraum. Zusätzlich dazu kann mit einer CLI eine teilweise Fehlersuche durchgeführt werden, und zwar ohne großen Verwaltungsaufwand.
Der große Nachteil an den CLI ist allerdings die erhöhte Komplexität der Anwendungen. Damit man eine CLI wirklich reibungslos und schnell bedienen kann, müssen zunächst die komplizierten Syntax Befehle auswendig gelernt werden – und diese können sich von Shell zu Shell unterscheiden. Dadurch dauert das Einarbeiten von neuen Administratoren und Moderatoren natürlich deutlich länger.
Vor- und Nachteile von CLI
Die CLI ist also ein unglaublich mächtiges Werkzeug, um auch komplizierte System effektiv zu managen. Darüber hinaus können damit deutlich detailliertere und kompliziertere Befehle ausgeführt werden, als mit einer GUI. Das bringt allerdings auch einen Nachteil mit sich. Im Folgenden haben wir die wichtigsten Vor- und Nachteile für eine bessere Übersicht noch einmal zusammengefasst.
Vorteile:
- Das Management mehrerer Systeme wird deutlich effektiver und einfacher
- Skripte können für eine vereinfachte Anwendung automatisiert werden
- Kommandozeilen können für die Fehlersuche verwendet werden
- Durch CLO können detailliertere und komplexere Befehle gegeben werden, was wiederum eine deutlich kleinteiligere Steuerung von Programmen und Systemen erlaubt
Nachteile:
- Hohe Komplexität erfordert großen Aufwand bei der Einarbeitung
- Verschiedene Shells können unterschiedliche Befehle verwenden, was die Anwendung weiter erschwert
- Für eine reibungslose Nutzung müssen zunächst die komplizierten Syntax-Strukturen gelernt werden
Die Anwendungsbereiche einer CLI
Auch wenn der Grundgedanke der CLI quasi so alt wie die Computer selbst ist, wird die CLI inzwischen in immer mehr Bereichen eingesetzt. So unter anderem:
- Betriebssysteme
- Anwendungsprogramme
- Computerspiele
Darüber hinaus wird CLI immer wichtiger für das Cloud Computing. Denn der große Vorteil des Cloud-Computings, dass man damit unglaublich komplexe Systeme erschaffen kann, die auf alle Unternehmensinformationen jederzeit zugreifen können, kann sich auch schnell zum Verwaltungsaufwand entwickeln.
Amazon verwendet für seinen Cloud Service deshalb zum Beispiel die AWS-Befehlszeilen-Schnittstelle (CLI). Dadurch kann ein Nutzer alle Aspekte aller genutzten AWS Services mit nur einem einzigen Tool verwalten. Anwendungsbeispiele wie dieses verdeutlichen, dass CLI in der Zukunft eine immer wichtigere Rolle beim Cloud Computing spielen wird.