Programmierung

bash für Einsteiger – Teil 1 Einleitung

  • 13/09/2012

Ein Handwerker ohne Zange, ohne Hammer oder Schraubendreher, ohne Säge oder Zollstock, ohne Schaufel oder Rechen kann nur schwer seinem Handwerk nachgehen. Ihm fehlt das grundsätzliche Handwerkszeug, ohne dass kein Haus gebaut werden kann.

So wie ein Handwerker seinen Hammer benötigt, brauchen Programmierer ihre Konsole (engl. shell), mit der sich wiederkehrende Arbeitsabläufe vereinfachen lassen und eine klare Sicht auf Dateien und Prozesse ermöglicht wird.

Die shell ist ein textbasiertes Interface, welches nur durch die Tastaur bedient werden kann. Jedes Betriebssystem stellt seine eigene shell zur Verfügung. Unter Windows kann man PowerShell nutzen. Unter Unix-basierten Betriebssystemen (Ubuntu, Mac, etc.) hat man Zugriff auf bash (bourne-again-shell).

New Image Systems liegt besonders bash am Herzen, weshalb wir in mehreren Artikeln auf diese shell eingehen möchten. Dieser Artikel beschreibt die Grundlagen, wodurch ein Einstieg in diese Konsole ermöglicht wird.

bash – Grundlegende Befehle

Die bourne-again-shell stellt uns eine Vielzahl an Befehlen zur Verfügung. Alle aufzuzählen und zu erläutern würde Einsteiger definitiv überfordern. Wir werden in diesem Blog nur auf die unseres Erachtens wichtigsten und am häufigsten verwendeten Befehle eingehen.

Nachdem wir bash zum ersten Mal geöffnet haben, befinden wir uns im Heimverzeichnis des Benutzers (Heimverzeichnis = Pfad, in dem alle wichtigen Dateien des Benutzers liegen). Durch die Eingabe des Befehls pwd können wir uns das Arbeitsverzeichnis ausgeben lassen (Arbeitsverzeichnis = Pfad, in dem wir uns aktuell befinden).

$ pwd
/home/steve

Im Heimverzeichnis möchten wir nun einen neuen Ordner anlegen. Dies wird durch den Befehl mkdir ermöglicht. mkdir erstellt Verzeichnisse, indem man den gewünschten Verzeichnisnamen durch ein Leerzeichen getrennt an das Schlüsselwort mkdir anhängt.

$ mkdir testverzeichnis

Mit dem Befehl ls können wir uns anzeigen lassen, ob das Verzeichnis tatsächlich erstellt wurde. ls listet uns alle Verzeichnisse und Dateien im Arbeitstverzeichnis auf.

$ ls
Documents Downloads testverzeichnis

Sollten weitere Informationen notwendig sein, z. B. welche Rechte unser Verzeichnis besitzt, können wir diese durch sogenannte Optionen erlangen. Optionen werden immer durch ein „“ angegeben.

$ ls -lath
drwx------+ 1 steve  staff   1,1K  7 Sep 12:03 Documents
drwx------+ 1 steve  staff   1,1K  7 Sep 12:03 Downloads
drwxr-xr-x  2 steve  staff   1,1K  7 Sep 12:03 testverzeichnis

Falls Sie in Erfahrung bringen möchten welche Optionen möglich sind bzw. wie ein Befehl verwendet werden kann, hilft Ihnen das bash-Handbuch weiter. Dieses wird durch das Schlüsselwort man verwendet.

$ man ls

Nach dem Öffnen des Handbuchs können Sie mit den Pfeiltasten navigieren. Möchten Sie das Handbuch beenden, drücken Sie auf den Buchstaben „Q“. Im nächsten Schritt wechseln wir in das erstellte Verzeichnis durch den Befehl cd (change directory).

$ cd testverzeichnis

Wenn wir ein Listing im Verzeichnis testverzeichnis machen, stellen wir fest, dass dieses noch leer ist. Da es nicht nur leer, sondern auch unnötig ist, wollen wir das Verzeichnis gleich wieder löschen.

$ cd ../
$ rm -r testverzeichnis

Das Löschen eines Ordners ist nur möglich, wenn Sie die Option -r angeben. Ohne diese Option können ausschließlich Dateien mittels rm gelöscht werden.

Ausblick

Nun kann man sich fragen, warum wir derartige Befehle beschreiben. In ein Verzeichnis zu wechseln, um Dateien zu kopieren oder zu löschen, ist doch mit jeder grafischen Oberfläche per Drag&Drop einfacher und schneller? Auf diese Fragen möchten wir im nächsten Teil eingehen.