Ein Shell-Programm ist ein Programm, mit dem Du in Deiner grafischen Oberfläche (z.B. in KDE) ein Fenster für die Eingabe von direkten Kommandos öffnen kannst. Die Shell ist vergleichbar mit der "DOS-Eingabeaufforderung" unter Microsoft Windows-Betriebssystemen. Sie erlaubt Dir, direkt mit dem Betriebssystem zu arbeiten und Befehle einzutippen, die sofort ausgeführt werden.
Unter Linux gibt es verschiedene Shell-Programme, z.B. die "bash" (das steht für "Bourne-Again Shell"). Welche Shell Du als Standard verwendest, ist in der Benutzerkonfiguration Deines Linux-Systems festgelegt.
Wie Du die Shell in Deiner grafischen Oberfläche aufrufen kannst, kann ich Dir hier nicht ausführlich beschreiben, weil es in verschiedenen Oberflächen jeweils anders sein kann. Ich selbst benutze im Moment SuSE Linux 7.3 mit der grafischen Oberfläche KDE. Dort gibt es in der Menüleiste unten einen Button, mit dem sich eine "Konsole", d.h. die Shell, öffnen läßt. Du kannst auch mehrere Shell-Fenster öffnen - aber achte drauf, daß Du nicht den Überblick verlierst... ;o)
Das englische Verb "to prompt" bedeutet: etwas auslösen; jemanden veranlassen, etwas zu tun; jemanden zu etwas bewegen oder auffordern. Im Theater bedeutet es: soufflieren, den Text vorsagen.
In der Shell ist das Prompt die Stelle, an der Du Befehle eingibst. Außerdem verrät Dir das Prompt unter Linux normalerweise auch noch, wer Du bist (d.h. als welcher Benutzer Du angemeldet / eingeloggt bist), wie der Rechner heißt, auf dem Du gerade arbeitest, und wo Du Dich befindest (d.h. an welcher Stelle in der Verzeichnisstruktur des Rechners Du gerade stehst).
Bei mir sieht das Prompt z.B. so aus:
meg@rutabaga:~>
Daran kann ich erkennen, daß ich als Benutzerin meg eingeloggt bin, daß mein Rechner rutabaga heißt, und daß ich mich gerade in meinem eigenen Home-Verzeichnis (~) befinde. (Mehr zum Home-Verzeichnis steht im Abschnitt Verzeichnisse.)
Du kannst Befehle einfach am Prompt eintippen.
Befehle sind in der Regel nach dem folgenden Grundschema aufgebaut:
befehl -parameter objekt(e)
Zuerst tippst Du den Namen des Befehls ein. Falls der Befehl Parameter benötigt, tippst Du nach dem Befehl ein Leerzeichen ein, dann einen Strich (-) und einen oder mehrere Parameter direkt dahinter. Danach kommen, wieder durch ein Leerzeichen getrennt, die Objekte, auf die der Befehl angewendet werden soll, also z.B. Dateien oder Verzeichnisse. Hier ein paar Beispiele für Befehle, mit und ohne Parameter und Objekte:
1. Beispiel: Ein Befehl ohne Parameter und Objekte
meg@rutabaga:~> pwd
Mit dem Befehl pwd ("print working directory") kanst Du Dir anzeigen lassen, in welchem Verzeichnis Du Dich gerade befindest. Dieser Befehl braucht normalerweise keine Parameter. Mein Rechner antwortet mir z.B. mit der Zeile:
/home/meg
Das heißt: ich befinde mich in meinem eigenen Home-Verzeichnis.
2. Beispiel: Ein Befehl ohne Parameter, aber mit zwei Objekten
meg@rutabaga:~> cp datei.txt dateikopie.txt
Mit dem Befehl cp ("copy") kannst Du z.B. eine Datei kopieren. Dafür benötigt dieser Befehl als Objekte zwei Informationen: welche Datei soll kopiert werden, und wohin soll sie kopiert werden? Im Beispiel oben kopiere ich den Inhalt der Datei datei.txt in eine neue Datei hinein, die ich dateikopie.txt nenne.
3. Beispiel: Ein Befehl mit mehreren Parametern und einem Objekt
meg@rutabaga:~> ls -al verzeichnis/
drwxr-xr-x 2 meg users 73 Jun 29 16:36 .
drwxr-xr-x 7 meg users 171 Jun 29 16:14 ..
-rw-r--r-- 1 meg users 248 Jun 29 16:34 datei.txt
Mit dem Befehl ls ("list") kannst Du den Inhalt eines Verzeichnisses abfragen, hier z.B. den Inhalt von verzeichnis/. Diesen Befehl kannst Du mit verschiedenen Parametern verwenden, z.B. mit den Parametern -a (listet alle, auch die versteckten Dateien und Verzeichnisse auf) und -l (zeigt zusätzliche Informationen zu den Dateien und Verzeichnissen an).
Der Rechner beantwortet diesen Befehl mit einer Liste, die die angeforderten Informationen über die Verzeichnisse und Dateien enthält.
Wenn Du unter Linux irgendwelche Namen eingibst, z.B. einen Befehl oder den Namen einer Datei oder eines Verzeichnisses, dann achte unbedingt auf den Unterschied zwischen Klein- und Großbuchstaben!
Das ist etwas ungewohnt, wenn Du bisher nur Microsoft Windows-Betriebssysteme kennst, denn dort spielt die Klein- oder Großschreibung von Dateinamen keine Rolle. Wenn Du aber auf einem Linux-Rechner arbeitest, sind datei.txt und Datei.txt zwei verschiedene Dateien!
Auch beim Eintippen von Parametern ist es sehr wichtig, auf Klein- oder Großschreibung zu achten. Etwas unübersichtlich wird die Sache dadurch, daß die Parameter nicht immer einheitlich verwendet werden. Derselbe Parameter kann bei zwei verschiedenen Befehlen durchaus unterschiedliche Wirkungen erzeugen. Ein Beispiel ist der Parameter -r oder -R (für "rekursiv"). Er wird mal klein, mal groß geschrieben, und oft haben die beiden Varianten des Parameters bei einem Befehl auch noch unterschiedliche Wirkungen... Wenn Du sicher gehen willst, lies die Bedeutung der Parameter zu einem bestimmten Befehl am besten in der entsprechenden Manpage nach.
Wenn Du es doch mal ganz genau wissen willst, kannst Du in den Manpages (d.h. "Manual Pages") nachlesen. Dazu mußt Du allerdings den Namen des Befehls kennen, zu dem Du Hilfe suchst. Um z.B. die Manpage zum Befehl pwd aufzurufen, gibst Du ein:
meg@rutabaga:~> man pwd
Die entsprechende Manpage wird dann in der Shell angezeigt. Mit den Pfeiltasten oder den Bild-rauf- und Bild-runter-Tasten kannst Du durch den Text blättern. Um die Manpage zu schließen, drückst Du auf der Tastatur die Taste q (für "quit").
Eine weitere Möglichkeit, Hilfe zu einem Befehl zu bekommen, sind die Hilfethemen ("help topics"), die Du mit dem Befehl help aufrufen kannst:
meg@rutabaga:~> help pwd
Du bekommst dann eine kurze Beschreibung zu dem entsprechenden Befehl angezeigt.
Übrigens - die beiden folgenden Kommandos funktionieren auch. Probier's ruhig mal aus. ;o)
meg@rutabaga:~> man man
meg@rutabaga:~> help help
Um etwas allgemeiner zu suchen (z.B. wenn Du nicht genau weißt, welchen Befehl Du eigentlich brauchst), kannst Du die vorhandenen Manpages nach Stichwörtern durchsuchen. Wenn Du z.B. Hilfe zum Thema Kopieren brauchst, kannst Du es mal hiermit probieren:
meg@rutabaga:~> apropos copy
Falls es den Befehl apropos auf Deinem System nicht gibt, kannst Du es auch so versuchen:
meg@rutabaga:~> man -k copy
Du bekommst eine Liste aller Manpages, in denen das Stichwort "copy" vorkommt. Laß Dich allerdings nicht entmutigen: diese Liste kann ziemlich lang sein. Meistens hast Du als Anfängerin oder Anfänger mehr Erfolg, wenn Du im Internet mit Hilfe von Suchmaschinen nach Deinem Thema suchst. Oft findest Du dort Seiten von Linux-Fans und -Kennern, die leichter verständlich und für den Anfang brauchbarer sind.
Um die Shell zu schließen, gib einfach den Befehl exit ein.
Text und Design © 2002 Meg Palffy & Tux J. Palffy | gebaut nach Webstandards