Linux Bibel online

Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Nicht-kommerziell - Weitergabe unter gleichen Bedingungen 3.0 Österreich Lizenz.

Change language by Google translator: ...

Grundlagen, Grundlegende Befehle, Textdateien, Hilfe suchen und finden, Erleichterungen, Befehle mit anderen verknüpfen

Was ist das Terminal unter Linux? Unter Microsoft Windows ist das Terminal schon lange entfernt worden auch wenn es inzwischen wieder durch die Powershell ersetzt wurde, unter Windows 10 wurde nun sogar ein Sub-System von Ubuntu mit dessen Bash integriert. Unter Windows ist das Terminal bei normalen Nutzern eher ungern gesehen und eigentlich auch nur für Entwickler nützlich. Normale Nutzer rümpfen eher die Nase wenn Sie das Wort Kommandozeile hören, auch hört man immer wieder - "Unter Linux muss man sich mit dem Terminal auskennen" - nein, dies ist eigentlich nicht so, das Terminal bringt nur viele Vorteile.

Nun wie könnte man das Terminal beschreiben, es ist eine Schnittstelle mit der es möglich ist direkt mit dem System zu kommunizieren - unter Windows ein Ding der Unmöglichkeit, mehr als die grafische Oberfläche unter Windows nicht bietet ist dort auch nicht möglich. Das Terminal ist eigentlich nur ein Fenster, über dieses gibt man Befehle ein und erhält Ausgaben oder die Befehle erledigen einfach Dinge die man erledigt haben möchte, zu diesen Befehlen gibt es weitere Optionen und noch mehr Optionen. Klingt danach als müsste man viel lernen - eigentlich gar nicht, wirklich kennen sollte man nur die grundlegenden Befehle, alles andere ergibt sich dann von selbst. Hinter diesem Fenster wartet nun der so genannte "Shell-Interpreter" der sich unter normalen Umständen "Bash" nennt, dieser Interpreter nimmt Ihre Eingaben entgegen und übersetzt diese für das System, nimmt von diesem wieder Ausgaben entgegen und übersetzt diese in eine für den Menschen verständliche Sprache.

Die großen Vorteile des Terminals sind die das man nicht durch die begrenzten Möglichkeiten der grafischen Oberfläche beschnitten wird. Hatten Sie nicht schon einmal in einer Software den Wunsch das diese noch einen zusätzlichen Schalter für diese oder jene Funktion hätte? Nun, der Entwickler hat eben einfach nicht daran gedacht oder er wollte dies einfach nicht, darum müssen Sie eben für diese Funktion eine weitere Software starten - auf dem Terminal besteht dieses Problem nicht, hier kombinieren sie einen Befehl mit weiteren anderen deren Funktion Sie gerade benötigen und erledigen so die gewünschte Aufgabe in einem Durchgang. Meist hat man auf dem Terminal Aufgaben auch gleich viel schneller erledigt da dem Nutzer lange Maus-Wege und Klicks durch unzählige Menüs erspart bleiben.
Nun, in diesem Beitrag werde ich versuchen Ihnen die Arbeit mit dem Terminal etwas näher zu bringen.

Das Terminal öffnen

Das Terminal ist wie schon beschrieben eigentlich nur ein Fenster, unter den verschiedenen Desktop-Umgebungen nennt sich die Software um dieses Fenster zu öffnen nun verschieden, unter KDE ist der Name etwa "Konsole", unter GNOME ganz einfach "Terminal" wie auch unter XFCE und vielen anderen grafischen Oberflächen. "xTerm" hingegen ist auf jeder grafischen Oberfläche vorhanden. Sie finden den Eintrag jeweils in Anwendungsmenü im Bereich "System". In den folgenden drei Bildern sehen Sie das zwischen den einzelnen Fenstern kein großer Unterschied besteht:

Das Linux-Terminal - die Konsole unter KDE

Das Linux-Terminal - die Konsole unter KDE

Das Linux-Terminal - das Terminal unter GNOME

Das Linux-Terminal - das Terminal unter GNOME

Das Linux-Terminal - Xterm

Das Linux-Terminal - Xterm

In diesen Fällen wurde die Optik etwas von mir angepasst - wie etwa das Logo des Systems eingefügt. Des weiteren lässt sich das Terminal durch die Tastenkombination Strg + Alt + F1, in diesem Fall drängt das Terminal die grafische Oberfläche komplett zurück und nur das Terminal ist zu sehen. Mittels Strg + Alt + F1 bis F6 wechseln Sie zwischen sechs verschiedenen Terminals und mit Strg + Alt + F7 wechseln Sie wieder zurück auf die grafische Oberfläche.

Der Aufbau des Terminals

Je nach Distribution unterscheidet sich der Aufbau des Terminals nur geringfügig. Nehmen wir einmal das Terminal unter Debian, die Syntax dazu sieht so aus:

Nutzername@Rechnername:~$

Zu Beginn sehen Sie also den Namen des Nutzers der das Terminal gestartet hat, hinter der Affenklammer findet sich der Name des Rechners und hinter dem Doppelpunkt das Verzeichnis in dem man sich aktuell befindet - "~" bedeutet in diesem Fall das man sich innerhalb seines Home-Verzeichnisses befindet. In meinem Beispiel würde dies also so aussehen:

robert@siductionbox:~$

Würde ich nun zum Nutzer "root" werden, also zum Administrator des Systems sollte dies so aussehen:

root@siductionbox:/home/robert#

Es hat sich also der Name des Nutzers geändert und das aktuelle Verzeichnis wird direkt angezeigt, zusätzlich findet sich zur Warnung die Raute am Ende.

Einsatz der Maus

Die Maus lässt sich auf dem Terminal nur sehr bedingt einsetzen, so etwa um Text zu markieren und diesen dann per Rechtsklick zu kopieren oder auch um kopierten Text per Rechtsklick einzufügen. Nur sehr wenige Anwendungen auf dem Terminal lassen es etwa auch zu damit Menüs zu öffnen.

Arbeiten mit dem Terminal

Niemand muss vor dem Terminal Angst haben - dies ist das erste was man wissen sollte, es gilt jedoch erst zu denken und dann zu handeln, die meisten Befehle die man auf dem Terminal ausführt fragen nämlich nicht nach ob man etwas wirklich will sondern erledigen einfach nur ihre Arbeit. Ein großer Unterschied zu Windows zeigt sich unter Linux durch die Unterscheidung zwischen groß geschriebenen Zeichen und klein geschriebenen, es gilt also wirklich darauf zu achten Befehle wirklich so auszuschreiben wie sie auch vorhanden sind. Auch, Befehle einfach nur einzugeben und abzuwarten funktioniert nicht - Sie müssen jeden Befehl durch die Eingabe-Taste bestätigen.

Grundlegende Befehle

Nun wollen wir uns gleich einmal die wichtigsten Befehle ansehen, also wie man auf dem Terminal durch die Verzeichnisse navigiert, Dateien und Verzeichnisse erstellt und löscht, beides kopiert und verschiebt sowie wie man sich den Inhalt von Verzeichnissen ansieht.

Inhalt des Verzeichnisses ansehen Zu Beginn wollen wir uns gleich einmal den Inhalt des aktuellen Verzeichnisses ansehen, starten wir das Terminal befinden wir uns in unserem Home-Verzeichnis das unter Windows den Eigenen Dateien entspricht. Um uns dessen Inhalt anzusehen nutzen wir ganz einfach den Befehl:

ls

Als Ausgabe erhalten wir alle sichtbaren Dateien und Verzeichnisse:

Terminal - Den Inhalt des Verzeichnisses ansehen

Terminal - Den Inhalt des Verzeichnisses ansehen

Dateien und Verzeichnisse werden je nach Distribution in unterschiedlichen Farben angezeigt, in unserem Home-Verzeichnis befinden sich jedoch auch versteckte Verzeichnisse und Dateien die zur Konfiguration des Systems dienen, um uns auch diese anzeigen zu lassen nutzen wir zusätzlich die Option "-a", also:

ls -a

Terminal - Den Inhalt des Verzeichnisses ansehen

Terminal - Den Inhalt des Verzeichnisses ansehen inklusive versteckter Dateien

Nun werden uns auch Dateien und Verzeichnisse mit einem Punkt vor dem Namen - also versteckte Dateien angezeigt.

Im Dateisystem navigieren Uns ein einziges Verzeichnis anzusehen bringt nicht sonderlich viel, um uns die restlichen Verzeichnisse ebenfalls ansehen zu können müssen wir uns zwischen diesen bewegen können, dazu dient der Befehl "cd". Wir wissen nun schon wie wir uns den Inhalt eines Verzeichnisses ansehen können und wollen nun etwa in das Unterverzeichnis "Dokumente" wechseln, also geben wir den Befehl an sowie das entsprechende Verzeichnis in das wir wechseln wollen und schließen dies mit dem Slash "/" ab:

cd Dokumente/

Und schon befinden wir uns im angegebenen Verzeichnis dessen Inhalt wir uns wieder mit dem Befehl "ls" ansehen können. Wollen wir wieder ein Verzeichnis zurück geben wir dem Befehl die Option ".." mit:

cd ..

Geben wir nur den Befehl "cd" an befinden wir uns ohne Umweg wieder in unserem Home-Verzeichnis. Um aus unserem Home-Verzeichnis in das Verzeichnis des Systems zu wechseln nutzen wir ganz einfach dessen Bezeichnung - also "/":

cd /

Dateien und Verzeichnisse löschen Als nächstes wollen wir Dateien löschen, doch Vorsicht - Dateien und Verzeichnisse die man auf dem Terminal löscht wandern nicht erst in den Papierkorb sondern werden direkt gelöscht und lassen sich nicht wieder herstellen. Um nun einzelne oder mehrere Dateien zu löschen dient der Befehl "rm", als kleines Beispiel möchte ich die Datei "robert.txt" löschen:

rm robert.txt

Dies lässt sich auch auf mehrere Dateien zur selben Zeit anwenden indem man diese einfach hintereinander durch ein Leerzeichen getrennt angibt:

rm robert.txt petra.jpg einkaufen.odf

Des weiteren lassen sich etwa problemlos alle Dateien mit einer bestimmten Endung löschen, dazu gibt man vor der Datei-Endung die so genannte Wildcard "*" an:

rm *.jpg

In diesem Fall werden alle Dateien mit der klein geschriebenen Endung ".jpg" gelöscht, um gleich alle Dateien jeder Art zu löschen lässt man einfach die Endung weg:

rm *

Um leere Verzeichnisse zu löschen nutzt man unter normalen Umständen den Befehl "rmdir", also etwa:

rmdir Dokumente/

Finden sich in dem angegebenen Verzeichnis jedoch Dateien oder weitere Unterverzeichnisse funktioniert der Befehl nicht, dann nutzt man den Befehl "rm", auch dann fragt der Befehl bei jeder Datei nach ob man diese tatsächlich löschen möchte - um dies zu unterbinden nutzt man zusätzlich die Optionen "-rf" und das komplette Verzeichnis wird gelöscht, also etwa:

rm -rf Dokumente/

Dateien und Verzeichnisse mit Leerzeichen werden auf dem Terminal etwas gesondert gehandelt. Nehmen wir einmal an ich habe das Verzeichnis "Dokumente Firma" und möchte dieses löschen, würde ich nun den Befehl "rm -rf Dokumente Firma/" nutzen würde die Bash denken ich würde die Verzeichnisse "Dokumente" und "Firma" löschen wollen, findet diese aber nicht und liefert nur die Ausgabe das diese Verzeichnisse nicht gefunden werden können, wir müssen der Bash also zeigen das es sich dabei um eine einzelne Datei oder ein einzelnes Verzeichnis handelt - wir geben also die Leerzeichen durch einen Backslash "\" an:

rm -rf Dokumente\ Firma/

Manchmal erstellt man Dateien oder Verzeichnisse und vertippt sich dabei, trifft man dabei ein Sonderzeichen wie etwa "-" oder welches auch immer kommt dann beispielsweise so etwas heraus "-okumente". Würde man nun den Befehl "rm -rf -okumente" nutzen würde die Bash denken "-okumente" wäre wieder eine Option was sie aber nicht ist und wieder erhält man Fehlermeldungen. In einem solchen Fall setzt man den Namen ganz einfach unter Anführungszeichen, also etwa:

rm -rf "-okumente

Ganz interessant wird es bei Dateien die etwa Windows-Anwendungen durch Fehler erzeugen, so erhielt ich selbst beispielsweise in meinem Home-Verzeichnis eine Datei namens "???" womit dann die Bash absolut nichts anfangen kann und sich nicht einmal durch die vorige Art löschen ließ, kleiner Tipp - hier hilft dann Midnigh Commander (MC).

Dateien kopieren Das Kopieren von Dateien und Verzeichnissen läuft auf dem Terminal etwas anders ab als auf der grafischen Oberfläche, statt dessen man zuerst die Datei oder das Verzeichnis erst kopiert und dann in einem anderen Verzeichnis einfügt erledigt man alles in einem Zug. Um auf dem Terminal zu kopieren nutzt man den Befehl "cp". Als keines Beispiel möchte ich die Datei "robert.txt" im aktuellen Verzeichnis nach "Dokumente/Akten" kopieren - ganz einfach:

cp robert.txt Dokumente/Akten/

Handelt es sich beim zu kopierenden Objekt um ein Verzeichnis mit Inhalt muss man zusätzlich die Option "-r" nutzen um auch den Inhalt zu kopieren, für das Verzeichnis "Bilder" also etwa:

cp -r Bilder/ Dokumente/Akten/

Im selben Zug könnte man der Datei oder dem Verzeichnis auch gleich einen anderen Namen geben. Ich möchte etwa der Datei "robert.txt" im neuen Verzeichnis den neuen Namen "robert2.txt" geben:

cp robert.txt Dokumente/Akten/robert2.txt

Den Befehl "cp" nutzt man auch gerne um Sicherungen von Dateien anzulegen, Sicherungen tragen unter Linux gerne die Dateiendung ".bak", nun möchte ich etwa von der Datei "robert.txt" im selben Verzeichnis eine Sicherung namens "robert.txt.bak" anlegen:

cp robert.txt robert.txt.bak

Die Sicherung spielt man einfach zurück mit dem selben Befehl nur umgekehrt:

cp robert.txt.bak robert.txt

Dateien / Verzeichnisse verschieben und umbenennen Um Dateien und Verzeichnisse zu verschieben und umzubenennen nutzt man auf dem Terminal den selben Befehl der sich "mv" nennt. Als kleines Beispiel möchte ich das Verzeichnis "Bilder" in "Bilder-Robert" umbenennen:

mv Bilder/ Bilder-Robert

Oder das Verzeichnis "Katzen" nach "Bilder/Katzen" verschieben, auch hier muss die Option "-r" genutzt werden wenn sich im Verzeichnis Dateien befinden:

mv -r Katzen/ Bilder/Katzen/

Dateien aller Art anlegen Nehmen wir einmal an ich möchte eine Textdatei namens "robert.txt" im aktuellen Verzeichnis anlegen, dazu nutzt dient der Befehl "touch" und als Option gibt man den Namen der Datei an - also:

touch robert.txt

Verzeichnisse anlegen Um Verzeichnisse zu erstellen nutzt man wiederum den Befehl "mkdir" und als Option gibt man den Namen des Verzeichnisses an, für "Bilder" also:

mkdir Bilder

Möchte man gleich einen ganzen Verzeichnis-Baum erstellen nutzt man zusätzlich die Option "-p", also etwa für "Bilder/Katzen"

mkdir -p Bilder/Katzen

Textdateien lesen

Linux ist ein sehr offenes System, in jede Konfiguration besteht meist aus einer ganz einfachen Textdatei und davon gibt es sehr viele. So ist es natürlich auch möglich sich solche Textdateien auf dem Terminal anzeigen zu lassen. Dazu dient der Befehl "less", es gibt auch den Befehl "more" - less ist aber um einiges moderner. Nun, als kleines Beispiel habe ich die Datei "/etc/apt/sources.list" und diese möchte ich mir ansehen. Befinde ich mich nicht im selben Verzeichnis wie die Datei gibt man einfach den Pfad dazu an:

less /etc/apt/sources.list

Textdateien auf dem Terminal mit Less lesen

Textdateien auf dem Terminal mit Less lesen

Mit den Pfeil-Tasten (rauf / runter) blättern Sie zeilenweise und mit der Leertaste seitenweise, mittels "H" erhalten Sie weitere Hilfe die Sie wiederum mit q beenden Sie diese wieder, Less selbst wird wieder durch die Taste q beendet.

Textdateien bearbeiten / erstellen

Die einfachste Software um auf dem Terminal Textdateien zu bearbeiten und zu erstellen ist Nano - auf unter auf Debian basierenden Systemen vorinstalliert. Als kleines Beispiel möchte ich die Datei "robert.txt" mit Nano öffnen:

nano robert.txt

Textdateien auf dem Terminal bearbeiten mit Nano

Textdateien auf dem Terminal bearbeiten mit Nano

Besteht die Datei nicht wird sie durch das Speichern später angelegt. Sie arbeiten mit Nano wie in einem normalen Texteditor, zum Speichern und Beenden sowie viele weitere Funktionen sehen Sie unten eine Leiste mit den verfügbaren. Vor jeder Funktion sehen Sie die nötige Tastenkombinaton um diese auszuführen, so etwa zum Speichern "^O", das Zeichen "^" steht ganz einfach für die Strg-Taste. Um also die Datei zu speichern wird also Strg + o genutzt.

Hilfe suchen und finden

Wie wir weiter oben schon gesehen haben gibt es so einige Befehle - und bisher haben wir nur die wenigsten kennen gelernt. Wie findet man für die aktuelle Aufgabe den richtigen Befehl, wie wendet man diesen an und welche Optionen hat dieser um ihn noch besser nutzen zu können? Nun, ganz einfach - fragen Sie ganz einfach das Terminal.

Den richtigen Befehl finden Wollen wir nun einfach damit beginnen den richtigen Befehl für eine Aufgabe zu finden, nehmen wir einmal an ich suche nach einem Befehl mit dem ich Dateien oder Verzeichnisse erstellen kann. Um das Terminal nun zu fragen nutzt man einfach das passende Stichwort und den Befehl "apropos", ich versuche es einmal mit dem Stichwort "erstellen":

apropos erstellen

Suche nach dem richtigen Befehl auf dem Terminal

Suche nach dem richtigen Befehl auf dem Terminal

Als Ausgabe erhalten wir Befehle deren Name oder Beschreibung zu unserem genutzten Stichwort passen, finden sich keine sollte man es mit der englischen Übersetzung versuchen. Um den richtigen Befehl nun aus diesen zu finden sollte man sich natürlich dessen Beschreibung ansehen. Nahezu jeder Befehl der sich auf dem Terminal nutzen lässt besitzt eine so genannte "Manpage", diese dient als Beschreibung für diesen, als Hilfe und Hilfe zu den möglichen Optionen. Und öffnen lässt sich diese Manpage durch den Befehl "man" mit dem entsprechenden Befehl als Option, also etwa für den Befehl "mkdir":

man mkdir

Manpages nutzt man wie mit Less, Pfeil-Tasten (rauf / runter) zum zeilenweisen blättern und Leertaste für seitenweises blättern, h für die Hilfe und q zum beenden.

Erleichterungen

Bisher haben wir Befehle, Dateien und Verzeichnisse immer vollständig von Hand geschrieben, dabei ist dies gar nicht nötig, auch muss man einen Befehl den man schon einmal abgegeben hat nicht noch mal abtippen - das Terminal hilft bei vielen möglichen Dingen.

Vervollständigung von Befehlen Nehmen wir einmal an Sie möchten den Befehl "apropos" nutzen um nach einem passenden Befehl für eine bestimmte Aufgabe zu suchen, unter normalen Umständen würde man den ganzen Befehl abtippen, dabei ist dies gar nicht nötig. Versuchen Sie beispielsweise einfach einmal:

apr

und drücken die "Tabulator"-Taste, gibt es keinen weiteren Befehl der mit den selben Buchstaben beginnt vervollständigt die Bash den Befehl automatisch. Tut sie dies nicht drücken Sie die Taste ein weiteres mal - das Terminal zeigt alle weiteren Befehle die mit den selben Buchstaben beginnen, geben Sie einfach so lange weiter die passenden Zeichen ein bis kein Befehl mehr mit den selben Zeichen beginnt. Dies funktioniert ebenso mit Dateien und Verzeichnissen.

Vergangene Befehle suchen Haben Sie einen Befehl schon einmal genutzt und benötigen diesen noch einmal? Sie müssen ihn nicht noch einmal eingeben - besonders bei längeren Befehlen kann man sich so einen Haufen Tastatur-Anschläge ersparen. Liegt der Befehl nur kurze Zeit zurück und Sie haben nur wenige andere Befehle inzwischen genutzt drücken Sie einfach die Pfeil-Nach-Oben-Taste so lange bis Sie Ihren gewünschten Befehl gefunden haben. Liegt der Befehl schon längere Zeit zurück und Sie haben inzwischen auch viele weitere Befehle genutzt kann die voran gegangene Möglichkeit schon etwas dauern, auch hier hilft das Terminal, drücken Sie die Tastenkombination Strg + r, der Eingabe-Prompt ändert sich, drücken Sie so lange die ersten Zeichen des Befehls ein den Sie benötigen bis die Bash diesen anzeigt mit allen Optionen, Verzeichnissen oder Dateien. Ist er angezeigt drücken Sie die Esc-Taste, nun können Sie den Befehl bestätigen oder auch ändern.

Befehle mit anderen verknüpfen

Jeden Befehl einzeln zu starten kostet auch Zeit, eine Funktion des Terminals ist es Befehle mit anderen zu verknüpfen und sich so viel Zeit zu ersparen. Nehmen wir einmal an Sie wollen unter auf Debian basierenden Systemen das komplette System aktualisieren - man würde die Befehle:

apt-get update apt-get dist-upgrade

nutzen. Dies bedeutet man gibt den ersten Befehl ein und wartet bis dieser durch gelaufen ist, nun startet man den zweiten, warum abwarten - man könnte gleich beide Befehle starten - etwa:

apt-get update && apt-get dist-upgrade

Wir haben nun unseren ersten Operator genutzt, nämlich "&&". Dieser Operator führt den zweiten Befehl nur dann aus wenn der erste fehlerlos durch gelaufen ist. Dann hätten wir noch "&", hiermit wird der zweite Befehl sowieso ausgeführt auch wenn der erste mit einem Fehler geendet hat. Weiters finden wir "||", damit wird der nach folgende Befehl nur ausgeführt wenn der voran gegangene mit einem Fehler geendet hat und mit "|" wird die Ausgabe des ersten Befehls an den folgenden weiter gegeben. Weiter geht es mit ">" - damit wird die Ausgabe des Befehls in die danach angegebene Datei geschrieben - existiert diese wird sie durch eine neue ersetzt. ">>" schreibt die Ausgabe des Befehls ebenfalls in die danach angegebene Datei - ersetzt diese aber nicht sondern fügt die Ausgabe an den bisherigen Inhalt an. Mittels "<" übergeben Sie den Inhalt der darauf folgenden Datei an den zuvor stehenden Befehl.

Das Terminal kann natürlich noch viel mehr, dies war bis jetzt nur eine sehr, sehr kurze Einführung. Auf dieser Webseite werde ich deshalb immer einige Tipps hinzu fügen. Weitere Software und Befehle finden Sie im Beitrag Software / Befehle für das Terminal.

Suche Nach oben Startseite Mail an den Autor Links rund um Linux

SiteLock